opencv安装方法总结
- 格式:docx
- 大小:540.97 KB
- 文档页数:5
C++的OpenCV使用方法总结在计算机视觉和图像处理领域,OpenCV是一个非常强大的开源库,它提供了丰富的功能和工具,用于处理图像和视频。
作为C++程序员,了解并熟练使用OpenCV库是非常重要的。
本文将对C++中使用OpenCV的方法进行总结,并探讨一些常见的应用和技巧。
一、安装和配置OpenCV在开始使用OpenCV之前,首先需要安装和配置这个库。
在Windows评台上,可以通过下载预编译的二进制文件进行安装;在Linux评台上,可以通过包管理器进行安装。
安装完毕后,还需进行一些环境配置,确保编译器能够正确信息OpenCV库文件。
二、基本图像处理1. 读取和显示图像在C++中使用OpenCV读取和显示图像非常简单,只需几行代码即可完成。
首先需要使用imread函数读取图像文件,然后使用imshow 函数显示图像。
在进行图像显示后,需要使用waitKey函数等待用户按下某个键,以便关闭显示窗口。
2. 图像的基本操作OpenCV提供了丰富的图像处理函数,包括图像缩放、旋转、平移、通道拆分与合并等。
这些函数可以帮助我们对图像进行各种基本操作,从而满足不同的需求。
三、特征提取与描述1. Harris角点检测Harris角点检测是一种经典的特征点检测方法,它可以用来识别图像中的角点。
在OpenCV中,我们可以使用cornerHarris函数来实现Harris角点检测,然后对检测结果进行筛选和标记。
2. SIFT特征提取SIFT是一种广泛应用的特征提取算法,它具有旋转不变性和尺度不变性。
在OpenCV中,我们可以使用SIFT算法来提取图像的关键点和特征描述子,从而实现图像匹配和目标识别等功能。
四、图像分类与识别1. 使用支持向量机(SVM)进行图像分类OpenCV提供了对机器学习算法的支持,包括SVM分类器。
我们可以使用SVM对图像进行分类,从而实现图像识别和目标检测等功能。
2. 使用深度学习模型进行图像识别近年来,深度学习在图像识别领域取得了显著的成就。
这两天在win7+64(32系统也只是在某些地方有区别,我会说明)位系统的vs2012中文版上永久配置了Opencv,发现装的时候遇到了好多问题,所以想总结一下。
一、安装OpenCV2.4.9首先下载相应的软件(win7+64位系统和vs2012中文版的安装这里就不做过多的介绍了):下载 OpenCV2.4.9: /downloads.html (选择windows 系统的,不区分x86和x64)我安装的目录是E:\opencv-2.4.9,大概有几个G,当然你也可以安装其他的版本,我没有试过,整体思路是一样的。
大概等几分钟就安装好了。
二、配置环境变量点击计算机—>右击属性—>左侧高级系统设置—>高级—>环境变量环境变量上面是用户变量,下册为系统变量。
1. 在用户变量下侧点击新建2项:变量名:OPENCV,变量值:E:\opencv-2.4.9\opencv\build;如下图变量名:PATH,变量值:E:\opencv-2.4.9\opencv\build\x64\vc11\bin;E:\opencv-2.4.9\opencv\build\x86\vc11\bin注意之间用分号分开,如下图。
2.在系统变量中找到path,必须注意,不要把系统变量path里面的值删除,而是向里面加入,以分号隔开,在里面加入以下路径对于64位系统加入:E:\opencv-2.4.9\opencv\build\x64\vc11\bin;E:\opencv-2.4.9\opencv\build\x86\vc11\bin对于32位系统加入:E:\opencv-2.4.9\opencv\build\x86\vc11\bin弄完环境变量后,最好重启以下系统。
当然在cmd中有些方法查看变量是否奏效,这里不再啰嗦,还有注意虽然我们是vs2012但是也要选vc11\bin这样的路径,而不是vc12\bin.三、vs2012工程的配置有些文档说每次新建工程都要重新配置,或者以一些啰嗦的方法配置如/lysc_forever/article/details/24272595里面说的方法,其实不用,我们完全一次性配置好而且简单,此方法是在/poem_qianmo/article/details/19809337里面学到的。
Opencv新手教程OpenCV是一个开源的计算机视觉库,用于处理图像和视频的各种任务。
它是一个强大的工具,可以应用于从简单的图像处理到复杂的计算机视觉任务。
在本教程中,我们将介绍一些基本的OpenCV功能和使用方法,以帮助你入门。
1. 安装OpenCV2. 导入OpenCV库在你的代码中,你需要导入OpenCV库。
你可以使用以下命令导入OpenCV库:import cv23.加载图像在OpenCV中,你可以使用imread(函数加载图像。
这个函数接受图像的文件路径作为参数,并返回一个代表图像的多维数组。
以下是一个加载图像的例子:image = cv2.imread('image.jpg')4.显示图像你可以使用imshow(函数显示图像。
这个函数接受两个参数,第一个参数是窗口的名称,第二个参数是要显示的图像。
以下是一个显示图像的例子:cv2.imshow('Image', image)cv2.waitKey(0)cv2.destroyAllWindows这个例子中,图像将在一个名为"Image"的窗口中显示。
你可以使用waitKey(函数等待用户的按键操作,然后使用destroyAllWindows(函数关闭窗口。
5.图像预处理OpenCV提供了许多图像预处理功能,如图像的调整、裁剪、旋转、缩放等。
你可以使用这些功能来改变图像的外观和大小。
以下是一些常用的图像预处理函数的例子:gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # 将图像转换为灰度图像resized_image = cv2.resize(image, (width, height)) # 调整图像大小cropped_image = image[y:y+h, x:x+w] # 裁剪图像rotated_image = cv2.rotate(image, cv2.ROTATE_90_CLOCKWISE) # 旋转图像这个例子中,我们将图像转换为灰度图像、调整大小、裁剪和旋转图像。
OpenCV安装与配置1.下载和安装OpenCVSDK。
官网:/找到OpenCVWindows版下载下来;得到自解压程序“opencv2.x.x.exe”。
2.配置环境变量。
计算机->属性->高级系统设置->高级->环境变量->(双击)系统PATH->添加相应路径,与之前已经有的值用“;”分开。
添加:opencv\build 86\vc12\bin这个路径。
3.工程包含(include)目录配置。
文件->新建->项目->选择【Win32控制台程序】,命名test1,选择路径,单击确定;进入【Win32应用程序向导】,下一步,勾选空项目;解决方案资源管理器【源文件】右键单击->添加->新建项,新建一个.cpp文件。
【菜单栏】里单击【视图】->【属性管理器】;之后展开【Debug|Win32】->【erDirectories】,右键单击【属性】,打开属性页面.【通用属性】->【VC++目录】->【包含目录】添加3个目录:D:\ProgramFiles\opencv\build\include;D:\ProgramFiles\opencv\build\include\opencv;D:\ProgramFiles\opencv\build\include\opencv2;4.工程库(lib)配置。
【通用属性】->【VC++目录】->【库目录】添加:D:\ProgramFiles\opencv\build 86\vc12\lib;D:\ProgramFiles\opencv\build 86\vc12\statib;5.链接库配置。
【通用属性】->【链接器】->【输入】->【附加依赖项】后输入:D:\opencv\opencv\build\includeD:\opencv\opencv\build\include\opencvD:\opencv\opencv\build\include\opencv2D:\opencv\opencv\build 86\vc12\libD:\opencv\opencv\build 86\vc12\staticlibopencv_ts300d.libopencv_world300d.libIlmImfd.liblibjasperd.liblibjpegd.liblibpngd.liblibtiffd.liblibwebpd.libopencv_calib3d300d.libopencv_core300d.libopencv_features2d300d.libopencv_flann300d.lib opencv_highgui300d.lib opencv_imgcodecs300d.lib opencv_imgproc300d.lib opencv_ml300d.lib opencv_objdetect300d.lib opencv_photo300d.lib opencv_shape300d.lib opencv_stitching300d.lib opencv_superres300d.lib opencv_video300d.lib opencv_videoio300d.lib opencv_videostab300d.lib Zlibd.libopencv_ts300.lib opencv_world300.lib IlmImf.libippicvmt.lib libjasper.liblibjpeg.liblibpng.liblibtiff.liblibwebp.libopencv_calib3d300.lib opencv_core300.lib opencv_features2d300.lib opencv_flann300.libopencv_highgui300.libopencv_imgcodecs300.libopencv_imgproc300.libopencv_ml300.libopencv_objdetect300.libopencv_photo300.libopencv_shape300.libopencv_stitching300.libopencv_superres300.libopencv_video300.libopencv_videoio300.libopencv_videostab300.libZlib.lib6.在Windows下加入OpenCV动态链接库。
【opencv】1.opencv安装之使⽤pip或conda安装opencv⽂章⽬录基于conda安装⽅法1. 创建需要的python版本虚拟环境2. 激活该虚拟环境并安装opencv3. 验证opencv是否正确安装4. 不想使⽤,可卸载opencv3,退出并删除虚拟环境基于pip安装总结本⽂将介绍如何在linux系统中安装opencv,从源码中安装的⽅式参见我的博客从源码安装很耗时,也很复杂,不推荐,源码安装的博客有⼀些安装OpenCV之前的依赖,如读写本地图⽚视频的软件包;并且也可以通过python⾃有的包管理⼯具pip来安装或常⽤科学计算包Anaconda的包管理⼯具conda来安装 .先要说明的是,The PyPi/PiWheels包含的opencv版本并不包括⼀些“non-free" 算法,⽐如SIFT,SURF或其它专利算法。
如果不介意这些,并且想快速搭⼀个opencv的环境,就是本⽂以下要讨论的。
还有就是通过pip或conda安装的包并不是opencv官⽅的包,⽽是由第三⽅维护的,但这并不影响我们的使⽤。
我们有两种⽅案安装基于conda和pip基于conda安装⽅法Anconda(或者Minianaconda)安装完成后,python版本固定(2019年8⽉27⽇,安装好anaconda后python默认版本是3.7),但我们可以⾃⼰指定所需要的python版本:conda将把包安装在$YOURENV/vm/lib/python3.6/site-packages1. 创建需要的python版本虚拟环境conda create -n vm python=3.6 #创建⼀个名叫vm,python3.6版本的虚拟环境1conda search opencv -c conda-forge3. 验证opencv是否正确安装pythonimport cv2print(cv2.__version__)此处遇到问题:环境为centosImportError: libGL.so.1: cannot open shared object file: No such file or directory解决办法yum install mesa-libGL.x86_64,测试可⽤4. 不想使⽤,可卸载opencv3,退出并删除虚拟环境conda unstall opencv3 #卸载opencv3conda deactivate #退出虚拟环境conda remove -n vm --all #删除虚拟环境基于pip安装基于pip安装,有两种选项:安装到系统的site-packages安装到虚拟环境的site-packages.也就是说可以通过pip在系统进⾏安装或在anaconda 或virtualenv的虚拟环境来安装。
python环境下安装opencv库的⽅法⽬录⼀、安装⽅法⼆、测试安装版本三、备注注意:安装opencv之前需要先安装numpy,matplotlib等⼀、安装⽅法⽅法⼀、在线安装1.先安装opencv-pythonpip install opencv-python --user我的python版本是3.6.8,可以看到opencv安装的默认版本是 opencv_python-4.1.0.25-cp36-cp36m-win_amd64.whl2.再安装opencv-contrib-pythonpip install opencv-contrib-python --user备注1:此种⽅法安装后,import cv2 as cv后,代码可以正常运⾏,但是⽆法⾃动补全解决⽅案1:import cv2.cv2 as cv(此⽅法有时会时灵时不灵)若出现这样的情况:例如cv.imread()本来是个函数,但是只能补全到cv.imread,解决⽅案:修改 project interpreter为别的路径,然后再修改回来;原因分析:库⽂件在刚刚被加⼊项⽬中时,pycharm会针对这个库⽂件,构建索引,然后再pycharm底部会显⽰⼀个进度条:updating skeletons for ...,在进度条⾛完之前,代码⽆法⾃动补全解决⽅案2:(1)检查上图的project interpreter处,只保留python的⼀个路径,把其他⽆效或错误路径全部删除;(2)修改cv2/__init__.py⽂件的代码,如下:import sysimport osimport importlibos.environ["PATH"] += os.pathsep + os.path.dirname(os.path.realpath(__file__))from .cv2 import *globals().update(importlib.import_module('cv2.cv2').__dict__)(3)删除⽣成的pyc⽂件(4)重启pycharm; import cv2 as cv,完美解决⽅法⼆、离线安装pip installopencv_python-4.1.1+contrib-cp36-cp36m-win_amd64.whlpip installopencv_python-4.1.1+contrib-cp36-cp36m-win_amd64.whl⼆、测试安装版本三、备注python扩展包的⾮官⽅windows⼆进制⽂件参见以下⽹址:总结到此这篇关于python环境下安装opencv库的⽅法的⽂章就介绍到这了,更多相关python安装opencv库内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
OpenCV学习(⼀)安装opencv(使⽤Anaconda)安装anaconda:Anaconda指的是⼀个开源的Python发⾏版本,其包含了conda、Python等180多个科学包及其依赖项。
下载下载完下⼀步下⼀步安装即可安装好⽤会有这些⼯具安装完成后打开Anaconda Prompt输⼊python -V 查看⼀下python版本安装opencv打开Anaconda Prompt⽅法⼀:使⽤pip直接下载安装pip install opencv-python==版本号pip install opencv-contrib-python==版本号注:opencv-python和opencv-contrib-python版本要⼀致⽅法⼆:下载 .whl⽂件来安装清华镜像地址:说明⼀下:⽐如opencv_python-3.4.1.15-cp36-cp36m-win_amd64.whl这个⽂件,cp36表⽰python3.6版本,这个版本要和anaconda⾥⾯的python版本保持⼀致下载对应版本下载完后,使⽤pip安装pip install [⽂件名]安装完后,打开python测试⼀下ok,都没问题修改conda镜像源改为清华源conda config --add channels https:///anaconda/pkgs/freeconda config --add channels https:///anaconda/pkgs/mainconda config --set show_channel_urls yes换回默认源conda config --remove-key channels遇到的问题我最开始装的是anaconda的最新版,python版本是3.8,遇到了⼀些问题,解决未果后,卸载重装了个 Anaconda3-5.1.0-Windows-x86_64.exe 版本的,python是3.6,与opencv_python-3.4.1.15-cp36-cp36m-win_amd64.whl 要求的版本正好对应,⼀路下去没有遇到任何问题。
教你如何在pycharm中安装opencv,tensorflow,keras ⽬录⼀.⾸先安装Anaconda,python和pycharm⼆.⾸先安装opencv三.安装tensorflow和kerass四.⼩结我在安装环境的时后,怎么都装不上去,搞了好久,现在来写⼀下⼼得。
⼀.⾸先安装Anaconda,python和pycharm有很多教程,我就不在此赘述⼆.⾸先安装opencv1.点击左下⾓的Terminal2.输⼊pip install opencv-python,然后按键盘上的enter(亲测有效)3.看到successfully就说明安装好了三.安装tensorflow和kerass1.点左上⾓的File选择Settings找到图中python Interpreter2.找到你配好的环境3.点击加号4.在上⾯的框框上搜索你要安装的框架5.将Specify version前⾯的框框中打勾,选中⼀个合适的版本(注意版本不要太⾼)6.点击Install Package7.这样⼀般就可以了,keras也是这样滴四.⼩结如果你看来很多教程下了很多次软件还是没有成功,你可以参考以下建议(我⾃⼰没有试过,看看就好)⾸先要找到你安装的anaconda3所在的⽂件,在找到envs,把别⼈已经配置好⽂件复制在此⽂件夹下。
(例如BY,pytorch_envs都是配置的环境)重点就是要选中已经配置好的环境(就是别⼈刚刚配好的那个)剩下就是像我上⾯写的那样找到你要安装的库下载下来,就⼤公告成啦。
因为每个⼈的电脑不⼀样,所以我的⽅法不⼀定适合所有⼈,如果你没有成功,请见谅。
到此这篇关于教你如何在pycharm中安装opencv,tensorflow,keras的⽂章就介绍到这了,更多相关pycharm安装opencv,tensorflow,keras内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
OpenCV的Ubuntu安装和Smart210_ARM开发板移植软硬件环境:宿主机:Ubuntu 10.04 32bit开发板:友善之臂Smart210OpenCV:2.4.10其他:cmake version 2.8.0arm-linux-g++ 4.5.1 / arm-linux-gcc 4.5.1查看Ubuntu版本号的指令为:sudo lsb_release –a,效果如下图1:图1:查看ubuntu的版本号1.Opencv2.4.10在Ubuntu上安装●首先安装必要的软件库安装GCC:sudo apt-get install build-essential安装Cmake:sudo apt-get install cmake安装Git(可选):sudo apt-get install git安装GTK开发版:sudo apt-get install libgtk2.0-dev安装pkg-config:sudo apt-get install pkg-config安装Python:sudo apt-get install python3.2-dev安装Numpy:sudo apt-get install python-numpy安装媒体包:sudo apt-get install ffmpeg安装可选媒体包:sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev●在OpenCV官网下载源码包:/●在/home/brodon/Documents文件夹下解压缩后,命令行输入cmake-gui,配置opencv的x86版本。
具体的操作见图2,注意在安装中,放弃了ffmpeg,OpenGL 库的支持。
cmake完成后进入opencv-x86文件夹,输入make 和make install安装。
配置include路径
也即告诉VC去什么地方寻找OpenCV的头文件,打开VC,选择菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”->“包含文件”,包含
D:\ProgramFiles\OpenCV2.3.1\build\include;
D:\Program Files\OpenCV2.3.1\build\include\opencv;
D:\Program Files\OpenCV2.3.1\build\include\opencv2
如果是自己编译的则输入D:\Program Files\OpenCV2.3.1\build\my\install\include
配置lib路径
也即告诉VC去什么地方寻找OpenCV的库文件。
在刚才下载的文件OpenCV-2.3.1-win-superpack.exe 里,已经为VC2008和VC2010预先编译好了动态库和静态库。
因此我们不需要如早先版本那样,自己用cmake编译OpenCV。
自己编译的库,库目录为:D:\Program Files\OpenCV2.3.1\build\my\install\lib 32位系统& VC2008,库目录为:D:\Program Files\OpenCV2.3.1\build\x86\vc9\lib 32位系统& VC2010,库目录为:D:\Program Files\OpenCV2.3.1\build\x86\vc10\lib 64位系统& VC2008,库目录为:D:\Program Files\OpenCV2.3.1\build\x64\vc9\lib 64位系统& VC2010,库目录为:D:\Program Files\OpenCV2.3.1\build\x64\vc10\lib 请根据自己的情况四选一,将库目录输入菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”->“库文件” 。
如下图所示:
刚才设置的是动态库,因此还需要将OpenCV的dll文件所在的目录加入Path环境变量。
dll文件目录如下,请根据自己情况五选一:
自己编译的库,dll目录为:D:\Program Files\OpenCV2.3.1\build\my\install\bin 32位系统& VC2008,dll目录为:D:\Program Files\OpenCV2.3.1\build\x86\vc9\bin 32位系统& VC2010,dll目录为:D:\Program Files\OpenCV2.3.1\build\x86\vc10\bin 64位系统& VC2008,dll目录为:D:\Program Files\OpenCV2.3.1\build\x64\vc9\bin 64位系统& VC2010,dll目录为:D:\Program Files\OpenCV2.3.1\build\x64\vc10\bin 由于有些函数需要TBB,所以需要将tbb所在的目录也加入到环境变量Path中。
TBB相关的DLL 路径为:
32位系统& VC2008:D:\Program Files\OpenCV2.3.1\build\common\tbb\ia32\vc9 32位系统& VC2010:D:\Program Files\OpenCV2.3.1\build\common\tbb\ia32\vc10 64位系统& VC2008:D:\Program
Files\OpenCV2.3.1\build\common\tbb\intel64\vc9
64位系统& VC2010:D:\Program
Files\OpenCV2.3.1\build\common\tbb\intel64\vc10
如下图所示将OpenCV和TBB的dll文件所在的目录系统环境变量Path中。
加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。
使用OpenCV 2.3.1编程
打开VC++ 2008 Express,创建一个Win32控制台程序helloopencv;
点击看大图
选择Solution Explorer里的opencvhello项目,点击鼠标右键,选择Properties。
点击看大图
,在[链接器LINKER]的[输入INPUT]中,为项目的Debug配置增加[附加依赖项
Additional Dependencies]:
opencv_calib3d231d.lib; opencv_contrib231d.lib;
opencv_core231d.lib; opencv_features2d231d.lib;
opencv_flann231d.lib; opencv_gpu231d.lib; opencv_highgui231d.lib;
opencv_imgproc231d.lib; opencv_legacy231d.lib; opencv_ml231d.lib;
opencv_objdetect231d.lib; opencv_ts231d.lib;
opencv_video231d.lib(可根据实际需要删减)注意,请打开了新编辑窗口(即
点击了“...”按钮)“附加依赖项”,并一条一条分别加入,一条一行(一个回车),否则
会出现类似以下错误:1>LINK : fatal error LNK1104: 无法打开文件“…….lib”
点击看大图
为项目的Release配置增加[附加依赖项Additional Dependencies]:
opencv_calib3d231.lib; opencv_contrib231.lib;
opencv_core231.lib; opencv_features2d231.lib;
opencv_flann231.lib; opencv_gpu231.lib;
opencv_highgui231.lib; opencv_imgproc231.lib;
opencv_legacy231.lib; opencv_ml231.lib;
opencv_objdetect231.lib; opencv_ts231.lib;
opencv_video231.lib(可根据实际需要删减)
点击看大图
编译运行下面的例程(需要将lena.jpg文件放在项目目录下,即与生成的.exe
文件同位置)。
/***********************************************
************************
* OpenCV 2.3.1 测试例程
* 于仕琪提供
************************************************
***********************/
#include "stdafx.h"
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main(int argc,char* argv[])
{
const char* imagename ="lena.jpg";
//从文件中读入图像
Mat img = imread(imagename);
//如果读入图像失败
if(img.empty())
{
fprintf(stderr,"Can not load image %s\n", imagename);
return-1;
}
//显示图像
imshow("image", img);
//此函数等待按键,按键盘任意键就返回
waitKey();
return0;。