OpenCV

树莓派安装OpenCV完整过程

穿精又带淫゛_ 提交于 2020-11-25 07:56:57
1. 配置并更新树莓派系统 sudo raspi-config // 进入后 打开摄像头 、SSH sudo apt - get update sudo apt - get upgrade sudo rpi -update 2. 安装OpenCV的相关工具 sudo apt-get install build-essential cmake git pkg-config 3. 安装OpenCV的图像工具包 sudo apt-get install libjpeg8- dev sudo apt -get install libtiff5- dev sudo apt -get install libjasper- dev sudo apt -get install libpng12-dev 4. 安装视频I/O包 sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev 5.安装gtk2.0和优化函数包 sudo apt-get install libgtk2.0- dev sudo apt -get install libatlas-base-dev gfortran 6. 下载OpenCV源码 git clone https://github.com/opencv/opencv.git

Opencv+opencv_contrib安装

强颜欢笑 提交于 2020-11-25 07:52:08
最近自己决定动手写一个视觉slam程序, 写代码不仅仅加深对slam实现原理的理解,同时提升使用cmake、kdevelop等工具的 熟练度,这些是编译大型项目的基础; 一个成熟完整的程序展现的是bin lib include src等文件夹,但是不可能将整个构造过程统统展现出来,对于小白来说,很难理解整个项目的搭建过程是怎样的,自己写代码,搭建项目的的时候可能仍是一头雾水,因此可以借写代码熟悉整个编译过程; 以后做改进,或者希望做框架的拓展时,也会更加得心应手; 话不多说,这一篇即是自己搭建slam程序遇到的第一个暗坑所做的总结; 做slam的第一步是从IO图片或者视频开始,我们很自然的要用到OpenCV,但是如果想要在opencv中使用sift算子,我们需要安装extra_modules(Opencv_contrib)组件, 因为sift和surf是需要专利付费的算法,专利权隶属于哥伦比亚大学,因此opencv3将一些不稳定的或需要专利付费的算法整理出了一个模块,所以如果工业界的同学们需要用这两个算法的时候(居然不用ORB?),要谨慎呀。 安装Opencv和Opencv_contrib的时候要注意版本匹配,下面给出网址大家可以从里面挑选对应的版本: https://github.com/opencv 温馨提示:点击opencv(or opencv_contrib)

windows+Pycharm+Anaconda下安装opencv

送分小仙女□ 提交于 2020-11-25 07:12:51
  本人最近开始使用pycharm,之前一直是在Anaconda环境下跑的程序,在Anaconda Navigator下运行,但发现Jupyter Notebook界面下的程序提示不是很人性化,所以迁移到pycharm了,在安装各种包时也遇到过很多问题,今天就常常出现的问题做一个简单的介绍: (1)首先,需要安装Anaconda。这个没有啥可说的,就是普通安装,不会出现什么大的问题。 (2)安装Pycharm,注意在安装pycharm时,一定要使用Anaconda下的python进行导入,如下图: (3)如果你之前的Anaconda没有安装过opencv,则下面就需要进行安装啦。打开Anaconda Prompt,输入conda install opencv即可自行安装。 (4)安装成功后,当你在pycharm界面中输入import cv2时,还是会发现不存在cv2,这时就需要在对下面的选项进行勾选。 (5)这时再回到pycharm中输入import cv2时就不会报错啦。   以上是我的总结和分享,由于时间原因不是很细致,希望能够帮助您。后面我会陆续写一些有关机器学习、深度学习的博文,非常愿意分享给大家。 来源: oschina 链接: https://my.oschina.net/u/4398168/blog/3712255

ubuntu16.04 卸载重装Opencv

好久不见. 提交于 2020-11-24 09:40:29
测试发现原有的OPenCV有问题,决定删掉原系统OPenCV,装新的。 卸载:(删除所有可能存在的文件夹) sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv 安装: 1.准备工作 编译环境安装: sudo apt -get install build -essential 必需包安装: sudo apt -get install cmake git libgtk2 .0 -dev pkg -config libavcodec -dev libavformat -dev libswscale -dev 可选包安装: sudo apt -get install python -dev python -numpy libtbb2 libtbb -dev libjpeg -dev libpng -dev libtiff -dev libjasper -dev

(转载)利用SIFT和RANSAC算法(openCV框架)实现物体的检测与定位,并求出变换矩阵(findFundamentalMat和findHomography的比较)

删除回忆录丶 提交于 2020-11-24 00:18:42
原文链接:https://blog.csdn.net/qq_25352981/article/details/46914837#commentsedit 本文目标是通过使用SIFT和RANSAC算法,完成特征点的正确匹配,并求出变换矩阵,通过变换矩阵计算出要识别物体的边界(文章中有部分源码,整个工程我也上传了,请点击 这里 )。 SIFT算法是目前公认的效果最好的特征点检测算法,关于该算法的就不多说了,网上的资料有很多,在此提供两个链接,一个是SIFT原文的译文,一个是关于SIFT算法的详细解释: SIFT算法译文 SIFT算法详解 整个实现过程可以复述如下:提供两张初始图片,一幅为模板图像,一幅为测试图片,目的就是根据模板图片中的物体,检测出测试图片中的物体,并表示出物体的具体位置和大小,测试图片中的物体位置和大小,已经事先用白色方框标记。 首先,对两幅图片,都使用SIFT算法提取特征点,提取结果如下:(SIFT特征提取方法就用的是上文链接“SIFT算法详解”中提供的代码) 然后对特征点进行匹配,按照SIFT算法原文作者的思路,每个特征点产生一个128维的向量,计算向量之间的欧式距离,采用最近比次近的方式完成匹配,如果最近距离比上次近距离小于0.8,则认为这是一个正确的匹配, 否则认为匹配不成功。结果这种匹配后的情况如下图: 可以发现,仍然存在着很多错误的匹配点

Appium 发送发送本机相册的图片

删除回忆录丶 提交于 2020-11-23 23:51:39
###问题引入 很多app的都有访问手机相册,然后发送图片的功能。这个功能也是比较常测试的一点。 一般来说,点开手机相册,就有的相册的缩略图。如下图所示: 这种缩略图,在appium是找不到任何定位。xpath也没有。在下面的情况下,该如何选择该图片,进行发送呢。解决的方案来自于这篇博客 https://appiumpro.com/editions/32 appium1.7引入了根据图片策略来定位元素。传入图片的base64位编码,然后引入opencv(开源视图处理库来匹配图片元素。 首先我们要做的是安装opencv4nodejs库。opencv4nodejs库的介绍如下 https://www.npmjs.com/package/opencv4nodejs 安装的步骤按照这个链接: https://gist.github.com/adwellj/61e7f202bcfe5b96f312293e9c812ca6 注,这边说的是两种方式,只要选择其中的就好了。 下面列出主要代码: 获取图片的Base64编码: public String getPictureImageB64() throws URISyntaxException,IOException{ String ImageName="picturetest02.jpg"; URL refImgUrl=getClass()

(一)OpenCV3.3.0安装配置(VS2015+win7)

柔情痞子 提交于 2020-11-22 21:00:32
一. vs2015 安装     参照博客 https://blog.csdn.net/guxiaonuan/article/details/73775519?locationNum=2&fps=1 二.  opencv3.3.0版本   下载地址 http://opencv.org/ ;在sourceforge中下载,也可以选择在github中下载。   解压安装包,安装路径 F:\opencv\opencv; 三   配置环境变量   计算机->系统属性->高级系统设置->高级->环境变量->path->编辑 在后面加上opencv的bin文件路径( 注意前面要加分号,一定要和与自己的opencv安装路径相符 ), 博主的路径为F:\opencv\opencv\build\x64\vc15;F:\opencv\opencv\build\x86\vc15,然后点击确定。 四  vs2015中的创建项目并配置   1.文件->新建->项目->visual c++->win32控制台应用程序->下一步->勾选空项目->完成。   2.源文件->添加->新建项->添加一个c++文件   3. 改成64位调试    四。  属性配置   右键单击项目出现属性一栏或者alt+enter进入属性   (1)通过配置属性—》vc++ 目录—》常规,选择包含目录添加以下路径:     F:

openCV 简单实现身高测量(未考虑相机标定,windows)

Deadly 提交于 2020-11-22 07:51:31
(一) OpenCV3.1.0+VS2015开发环境配置 下载OpenCV安装包(笔者下载3.1.0版本) 环境变量配置 (opencv安装路径\build\x64\vc14\bin,注意的是x64文件夹下分为vc12和vc14两个文件夹,他们对应于VS的版本,vc8 = Visual Studio 2005,vc9 = Visual Studio 2008,vc10 = Visual Studio 2010,vc11 = Visual Studio 2012,vc12 = Visual Studio 2013,vc14 = Visual Studio 2015) VS2015配置。 进入属性管理器(View—>Other Windows—>Property Manger,展开目录,选中Debug|Win64中的Microsoft.Cpp.x64.user,并右键点击属性(Properties)进入属性界面。) 包含目录配置(通用属性(Common Properties)—>VC ++目录—>包含目录(Include Directories))。添加路径:D:\Code\C\opencv\build\include;D:\Code\C\opencv\build\include\opencv;D:\Code\C\opencv\build\include\opencv2 配置库文件目录

Win10编译Mingw

依然范特西╮ 提交于 2020-11-22 06:51:43
准备工具 Windows平台 cmake mingw-x64 Linux平台(Ubuntu) sudo apt-get install git cmake cmake-gui -y 下载源码 建议直接下载我是用的源码,下面是源码列表。 版本 地址 OpenCV 3.4.5 https://mirrors.lucoder.com/?/opencv/dist/3.4.5/opencv-3.4.5.zip <br /> https://mirrors.lucoder.com/?/opencv/dist/3.4.5/opencv_contrib-3.4.5.zip 如果你下载官方的源码,那么修改源码中的CDN地址: https://mirrors.lucoder.com/opencv ,目前CDN支持OpenCV 3.3~3.45。 搜索 ocv_download (建议使用Visual Studio Code),修改链接内容: https://raw.githubusercontent.com #修改为 https://mirrors.lucoder.com/?/ 只需要修改地址即可,其他的都不用修改,比如下面的链接。 "https://raw.githubusercontent.com/opencv/opencv_3rdparty/${OPENCV_3RDPARTY_COMMIT}/"

OpenCV获取视频最大分辨率

落花浮王杯 提交于 2020-11-21 13:29:41
想要获取最大分辨率,必须要设置一个超大的分辨率,不然系统可能就采用默认的了..... 默认的就需要自己用工具或者系统自带的相机工具查看了..... 这个笔记本是垃圾货,才720p; 新的已经达到了2160p ,30fps! if (!PCapture) { PCapture = new VideoCapture(priviewID); // PCapture->open(priviewID); // int apiID = cv::CAP_ANY; // 0 = autodetect default API open selected camera using selected API // PCapture->open(priviewID + apiID); // // check if we succeeded // if (!PCapture->isOpened()) { // //cerr << "ERROR! Unable to open camera\n"; // //return -1; // CLogHelp::ITCLog("ERROR! Unable to open camer!"); // return FALSE; // } } if (PCapture) { if (priviewID == 0) { PCapture->set(CAP_PROP