如何从入门开始学习OpenCV
发布时间:2025-05-20 14:41:12 发布人:远客网络
一、如何从入门开始学习OpenCV
先去下载最新版OpenCV,网址如下:。下载完成后解压到相应目录。本人解压到D:\Program Files\OpenCV2.4.3。
有的文章提到使用CMake把OpenCV下面的范例生成为Visual Studio的工程,此处我没有这样做。直接使用范例。这里先把OpenCV目录下面的几个重要目录做个说明:
doc目录:主要包含OpenCV的帮助文档。其中opencv2refman.pdf主要是OpenCV的各种类和函数的使用说明。
opencv_tutorials.pdf,主要是下面教学代码目录里面各个教学范例的简单讲解。
opencv_cheatsheet.pdf主要是最常用OpenCV类和函数的集合。此3个PDF文档对自学者帮助最大。
samples\cpp\tutorial_code目录:里面包含基本教学代码。和上面的opencv_tutorials.pdf文档遥相呼应,构成一个完整的自学体系。
build目录:包含编译,调试,发布所需要的各类动态库,静态库,头文件等。因为OpenCV2.4.3好像只支持Visual Studio 2008以上版本,我在这里以Visual Studio 2008为例讲解如何让范例跑起来。
添加环境变量:此处我在path环境变量中添加如下目录:D:\Program Files\OpenCV2.4.3\build\x86\vc9\bin。记住在前面一个目录后面加分号。
在Visual Studio中包含头文件目录:见附件中的图片,已经用红色矩形框标识如何操作。
在Visual Studio中包含库文件目录:见附件中的图片,已经用红色矩形框标识如何操作。4
建立一个新建Visual Studio VC win32控制台应用工程,这里我选择带预编译头的工程,省去添加cpp文件的工作。
代码创建:这里我选择samples\cpp\tutorial_code\ImgProc\Morphology_2.cpp文件。先添加包含目录,如下(以后所有范例均可以如下添加):#include<opencv2/opencv.hpp>#include<stdio.h>然后复制代码。
编译文件:自然少不了要包含静态库,要添加的库(debug版和release差别就是文件名后多了一个d标识是debug版)如下:
opencv_haartraining_engined.lib
字符集设置:如果编译过程中出现如下错误:不能将参数 1从“_TCHAR*”转换为“const std::string&”原因如下:无法从“_TCHAR*”转换为“const std::string”。请字符集设置为“使用多字节字符集”。
最后指定命令后参数:方法见附件。这样就可以不用在windows命令行下输入参数了,方便调试,但是要注意,图片必须放在你所建立的工程目录下(和.cpp以及.h文件同一目录)。否则就要加上相应的路径。如果参数多于1个,请以空格分开。
支持所有参数设置完成,开始编译运行吧。如果Visual Studio无问题的话,按照以上按部就班操作,每个范例均可以正常运行。
二、opencv使用什么语言实现
1、OpenCV使用C++和Python两种语言实现。
2、OpenCV是一个开源的计算机视觉和机器学习软件库,它提供了广泛的计算机视觉、图像处理和数字图像处理的功能。该库主要使用C++编写,因此,在性能要求较高的应用中,如实时视频处理或大规模图像处理,C++接口被广泛使用。C++是一种面向对象的编程语言,具有高效、可维护和可移植性好的特点,这使得OpenCV在性能优化和代码控制方面具有优势。
3、除了C++接口,OpenCV也提供了Python接口。Python是一种广泛使用的科学计算编程语言,其语法简洁易懂,易于上手,非常适合进行快速开发和原型设计。OpenCV的Python接口为计算机视觉的研究和应用提供了方便的工具,使得开发者可以更加便捷地使用OpenCV的功能进行图像处理和计算机视觉任务。
4、OpenCV的Python接口与C++接口在功能上是一致的,但Python版本在某些方面可能更加易于使用。例如,Python的图像处理模块可以直接使用NumPy库进行数组操作,这使得图像处理变得更加简单和直观。此外,OpenCV还提供了MATLAB接口和其他语言的绑定,使得该库可以在更广泛的领域得到应用。
5、总的来说,OpenCV主要使用C++实现,同时提供Python等其他语言的接口。这使得开发者可以根据具体需求和编程技能选择合适的语言来使用OpenCV的功能。无论使用哪种语言接口,OpenCV都为计算机视觉和图像处理提供了强大的工具支持。
三、opencv是干什么的
1、OpenCV是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,并且正在日益扩展。
2、OpenCV基于C++实现,同时提供python, Ruby, Matlab等语言的接口。OpenCV-Python是OpenCV的Python API,结合了OpenCV C++ API和Python语言的最佳特性。
3、OpenCV是一个基于BSD许可发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。OpenCV在计算机视觉的发展中发挥了重要的作用,使成千上万的人能够在视觉上做更多的工作。OpenCV允许学生,研究人员,专业人员和创业者高效地实施项目,并通过向他们提供可在多种平台上优化的计算机视觉架构。