精华内容
下载资源
问答
  • 运行opencv测试代码的时候出现丢失opencv_highgui2410.dll,重新安装可以解决这个问题。解决方案:是在配置opencv时候出现了错误。在系统环境中的path中配置中bin目录写错了,我写的 :D:\opencv2.4.13\source\...\...

    运行opencv测试代码的时候出现丢失opencv_highgui2410.dll,重新安装可以解决这个问题。

    解决方案:

    是在配置opencv时候出现了错误。在系统环境中的path中配置中bin目录写错了,

    我写的   :D:\opencv2.4.13\source\...\bin

    修正      :     D:\opencv2.4.13\sources\...\bin

                     +  把这个目录下所有dll文件都复制到C:\Windows\System32和SysWOW64目录下

    展开全文
  • g++ -o test test.cpp -I /usr/local/include -I /usr/local/include/opencv -I /usr/local/include/opencv2 -L /usr/local/lib /usr/local/lib/*.so 2通过写.CMakeLists.txt来编译如下: ...

    1.命令行编译如下:

    g++ -o test test.cpp -I /usr/local/include -I /usr/local/include/opencv -I /usr/local/include/opencv2 -L /usr/local/lib /usr/local/lib/*.so

     

     2通过写.CMakeLists.txt来编译如下:

     

    展开全文
  • 自己编写的彩色图像自适应增强的完整代码,下载后配置环境即可运行。无C币的可以直接在我博客留言,我会发送给你。https://blog.csdn.net/u013921430/article/details/83865427
  • VSCode 调试opencv代码

    千次阅读 2019-02-20 13:36:46
    VSCode中安装必须的插件C/C++和Code Runner,可选插件C/C++ Snippets和Include Autocomplete 在MRHead中切换目录至MRCrossPlatform(之前记得sh setup.sh...里面代码也很简单: #include "mrdir.h" #i...

    VSCode中安装必须的插件C/C++, 可选插件Code Runner, C/C++ Snippets和Include Autocomplete

    在View->Debug中打开调试栏,单击左上角的绿色三角箭头开始调试,会让你配置调试选项,选择C++那项

    建议使用CMake配置

    build.sh内容:

    #!/bin/bash
    if [ ! -d build ] ; then
        mkdir build
    fi
    cd build
    cmake ..
    make -j4

    launch.json内容:

    {
        // Use IntelliSense to learn about possible attributes.
        // Hover to view descriptions of existing attributes.
        // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
        "version": "0.2.0",
        "configurations": [
            {
                "name": "(lldb) Launch",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceFolder}/build/${fileBasenameNoExtension}",
                "args": [],
                "stopAtEntry": false,
                //"preLaunchTask": "build",
                "cwd": "${workspaceFolder}/build",
                "environment": [],
                "externalConsole": false,
                "MIMode": "lldb"
            }
        ]
    }

    tasks.json内容:

    {
    	"version": "2.0.0",
    	"tasks": [
    		{
    			"type": "cppbuild",
    			"label": "build",
    			"command": "bash build.sh",
    			"options": {
    				"cwd": "${workspaceFolder}"
    			},
    			"problemMatcher": [
    				"$gcc"
    			],
    			"group": "build",
    			"detail": "compiler: /usr/bin/clang++"
    		}
    	]
    }

    示例项目: 在MRHead中切换目录至test(之前记得sh setup.sh安装项目把头文件复制到指定位置哦)

    将test目录拖至VSCode上打开

    里面代码也很简单:

    #include "mrdir.h"
    #include "mropencv.h"
    #include "mrutil.h"
    #include "fstream"
    using namespace std;
    
    void testImage()
    {
    	cv::Mat img = cv::imread("../opencv.png");
    	cv::namedWindow("img", 0);
    	cv::imshow("img", img);
    	cv::waitKey();
    }
    
    int main()
    {
    	testImage();
    	return 0;
    }

    就是打开指定位置下的图片并显示

    此时,新建了一个名为launch.json的json文件,根据你的习惯修改

    "program":"${workspaceFolder}/${fileBasenameNoExtension}.debug.out"

    一项,这里指向要调试的程序//标注:${workspaceFolder}为工作空间文件夹,${fileBasenameNoExtension}为当前打开的文件的文件名,不包括路径和后缀名

    添加一项参数(注意不要落下逗号),这指的是在调试前要预先执行的任务(因为如果要使用gdb调试需要在编译时添加-g参数,所以不能直接使用运行时的文件,建议两个可执行文件分开命名)

      "preLaunchTask": "build",

    按F5调试一次,会提示没有找不到"build",点击配置任务,使用tasks.json模板新建一个Others任务

    {
        // See https://go.microsoft.com/fwlink/?LinkId=733558
        // for the documentation about the tasks.json format
        "version": "2.0.0",
        "tasks": [
            {
                "label": "build",
                "type": "shell",
                "command": "g++ ${file} -o ${fileBasenameNoExtension}.debug.out -g `pkg-config --cflags --libs opencv` -std=c++11"
            }
        ]
    }

    参数label修改为build,根据需要修改编译时使用的command,记得带上-g参数

    "command": "g++ ${file} -o ${fileBasenameNoExtension}.debug.out -g `pkg-config --cflags --libs opencv` -std=c++11"

    每次调试时选中要调试的文件然后按F5就可以愉快的调试了

    其中链接opencv库就是通过pkg-config --cflags --libs opencv命令完成的.

    为了不让VSCode在显示opencv相关的代码时提示一堆找不到头文件的警告,可以在c_cpp_properties.json中的configurations下的includePath中添加本机opencv的安装路径,比如: "/usr/local/Cellar/opencv@3/3.4.5/include"

    或者用CMake配置也可,步骤见最后一个参考连接

    主要配置启动文件:

    "program": "${workspaceFolder}/build/${fileBasenameNoExtension}",

    无需//"preLaunchTask": "build",

    记得在CMakeLists.txt里添加

    set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g") 

    开启debug,不然断点调试是无效的,如需去除dubug,只要去掉此就行了.

    如果遇到调试时vector内容不能正常显示,可以在launch.json中加上

    "miDebuggerPath": "/Applications/Xcode.app/Contents/Developer/usr/bin/lldb-mi" 

    参考:

    Windows下vscode 中C/C++编译及调试环境的搭建

    linux下vscode 中C/C++编译及调试环境的搭建

    初学c++ VS code + CMake 编译调试helloWord

    使用 Visual Studio Code 搭建 C/C++ 开发和调试环境

    展开全文
  • 车牌检测和识别opencv代码

    热门讨论 2017-03-12 16:03:51
    车牌识别代码,采用C++和OPENCV2实现,详细实现过程可以参见我的博客车牌识别文章。训练所用的数据科查看我的另外一个资源。
  • 这篇文章中,我们一起探讨了如何通过已经安装的OpenCV,选择...我们可以对其源代码进行再次编译,得到二进制文件,或者修改原版官方的OpenCV代码,并编译后为自己所用,为深入理解OpenCV的开源魅力迈出了坚实的一步。


    本系列文章由@浅墨_毛星云 出品,转载请注明出处。  

    文章链接: http://blog.csdn.net/poem_qianmo/article/details/21974023

    作者:毛星云(浅墨)    邮箱: happylifemxy@163.com 

    写作当前博文时配套使用的OpenCV版本: 2.4.8


     

     

    这篇文章中,我们一起探讨了如何通过已经安装的OpenCV,选择不同的编译器类型,生成高度还原的OpenCV开发时的解决方案工程文件,欣赏OpenCV新版本中总计 六十六多万行的精妙源代码。我们可以对其源代码进行再次编译,得到二进制文件,或者修改原版官方的OpenCV代码,并编译后为自己所用,为深入理解OpenCV的开源魅力迈出了坚实的一步。

     

     



    一、下载安装cmake




    想要在Windows平台下生成OpenCV的解决方案,我们需要一个名为cmake的开源软件,可以在

    camke的官网:http://www.cmake.org/上下载到,首先转到其下载页面。下载页面的Source distributions处可以下载到cmake软件的源码,如果对这款开源软件感兴趣,不妨看看。

     

    而Binary distributions处可以下载到cmake的执行文件,我们只需要下载到其执行文件即可,选择Windows (Win32 Installer)进行下载,点击这里直接下载http://www.cmake.org/files/v2.8/cmake-2.8.12.2-win32-x86.exe

     



    这一步就是下载和安装cmake,下载地址给出了,安装大家都会,就不过多讲。安装完成后,

    如果没有生成桌面快捷方式,在安装路径下,如D:\Program Files(x86)\CMake 2.8\bin处找到cmake-gui.exe运行


    另外,关于cmake的一个简介:

    CMake,是“crossplatform make”的缩写,它是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是CMake 和 SCons 等其他类似系统的区别之处。

     


     

     

    二、使用cmake生成OpenCV源代码工程的解决方案




    这一步是全文的核心内容。为了讲解条理清晰,我们分步介绍:


    <1>运行cmake-gui


    如果没有生成桌面快捷方式,在安装路径下,如D:\Program Files(x86)\CMake 2.8\bin处找到cmake-gui.exe运行。

    运行后得到如下的窗口:




    <2>指定OpenCV的安装路径


    如下图,点击红色方框内的“Browse Source”按钮,在弹出的对话框中指定出OpenCV安装时源代码的存储路径。

    以当前最新版本的OpenCV 2.4.8安装在D:\Program Files下为例,则在此选择路径:D:\Program Files\opencv\sources


    其实我们可以发现,此路径下必须会有一个名为CMakeLists.txt的文件。

    这个文件就是给cmake留下的配置文件,cmake可以根据这个配置文件,通过不同的编译器选择,来生成不同的解决方案,VisualStudio的编译器对应的就生成Visual Studio版的sln解决方案。




    <3>指定解决方案的存放路径


    如下图,点击红色方框内的“Browse Build”按钮,在弹出的对话框中指定我们存放生成的opencv解决方案的路径。比如F:/opencv。

     

     

     

    <4>第一次Configure


    如图,第一次点击Configure按钮。



    会弹出如下进行编译器选择的对话框:


    首先选定“Use default native compilers”,然后,我们可以发现下拉列表中提供了几十种编译器给我们选择,因为我们安装了Visual Studio,会默认为我们选择好对应版本的Visual Studio编译器,比如Visual Studio 10(即待会儿会生成对应VS2010的sln解决方案)

    确认无误后,单击“finish”按钮。

    于是,cmake开始第一次源代码配置过程:


    在cmake处理的过程中,也许会出现诸如

    “Could not copy from: D:/Program Files(x86)/CMake 2.8/share/cmake 2.8/Templates/CMakeVSMacros2.vsmacros

    to: C:/Users/浅墨/Documents/VisualStudio 2010/Projects/VSMacros80/CMakeMacros/CMakeVSMacros2.vsmacros”

    的红色字样警告,因为这是系统用户的路径名有中文字符 “浅墨”照成的,因为cmake不认中文路径,但是只要我们在上面的第三步中设置生成的路径中没有中文就行了。就算有这个因为C:/Users/下有中文照成的错误,也对我们这次的生成无碍,不用去管他。

     

    PS:关于系统用户名为中文,这是血的教训。之前在玩Unity3D游戏引擎的时候,被系统路径为中文虐了好一阵子,在unity官方商店下个插件就报错。在控制面板中更改用户名是治标不治本的办法,最后把系统user的Documents目录定位到别的地方才解决。不过这会造成一些在Documents路径下存了数据的软件数据丢失,甚至打不开。。。。。所以,血的教训。。。。浅墨在以后重装系统的时候,绝对不会以中文ID作为用户名了。

     

    看到进度条读到尽头,出现了Configuring done字样,第一次的源码配置就完成了,如图





    <5>第二次Configure



    第一次配置完成之后,我们还需要进行第二次配置,于是再次点击“Configure”按钮。这次的配置是很快的,几秒钟就会再次出现“Configuring done”字样,并且红色的选中部分都正常了:


     



    <6>点击Generate,大功告成

     


    这样,就只剩下点一次Generate按钮,来生成最终的解决方案了:

     


    因为之前已经有过两次的configure过程,所以生成解决方案也将是非常的快:


     

    看到Generating done字样,就表示大功告成,可以去之前我们指定的F:\opencv下找寻我们生成的解决方案了。

     

     

    PS:2.4.8的OpenCV用cmake生成的工程只有3点多M,相比之前2.4.6版本的OpenCV有3个多G的工程,浅墨一开始都以为生成出错了,但是点开sln工程,发现里面依然可以看到源代码。原来自从2.4.7版本起,opencv源代码就直接包含在了opencv的安装路径下,我们生成的sln工程,也只是连接到了opencv安装路径下的源文件而已,工程本身并不大。

     

     

     

    三、编译OpenCV源代码

     


    我们怀着忐忑的心态打开刚刚生成的热乎乎的“OpenCV.sln”解决方案,看到一个庞大的工程映入眼帘——这可是一个包含了67个项目的解决方案:

     

    大家这个时候可以在解决方案资源管理界面,随意地点进去一个自己感兴趣的项目,比如opencv_core这个项目,在opencv_core/Src/matrix.cpp查看其中某个文件的源代码,浅墨截的这张图是大家都很熟悉的Mat类型的某个构造函数的源码:


    一阵对源代码的欣赏之后,我们可以按【F5】或者使用其他各种操作来启动调试



    编译过程:



    编译结果:



    编译用时5分钟左右,具体时间和机器配置关系比较大。通过浅墨的截图可以发现,这次编译成功了62个项目,失败了0,即没有出篓子,全部编译生成成功了。:D

    另外,编译完成会得到这样的警告:


    别紧张,这是正常的。因为OpenCV2.4.8的源代码工程默认将“ALL_BUILD”这个项目其设为了启动项,编译成功后,就会默认运行它。


    而“ALL_BUILD”是一个项目生成周边的杂项,不是exe,本身不可以运行,所以就会弹出这样的提示。

     

    关于启动项的指定,我们可以在解决方案资源管理器里面,对需要设为启动项的那个项目反键点击,在弹出的菜单项中点击【设为启动项(J)】进行设定。如下图:


    其实我们编译OpenCV,就是得到了一些二进制的生成文件,如DLL和Lib、exe。

    因为我们是在debug下编译的,所以在工程目录的bin\debug下会生成opencv 2.4.8的依赖库(700多M,有点大),可以供我们以后调用opencv时使用。



     



    四、OpenCV代码行数统计



    OpenCV到了2.4时代,源代码src部分已经有了170多M,而源代码行数,通过浅墨的统计,是68多万行。(这里浅墨不禁有些感慨,前两天刚在捣鼓的Unreal Engine 4的源码是144多万行,是OpenCV的两倍多。。。。)

     

    可以看到,准确的OpenCV 2.4.8的源代码,有687,870行。

    OK,盛宴开始,计算机视觉领域的大宝库——OpenCV的源码近眼前,不虚此生地欣赏它吧。

     


    嗯,本节的内容大概就是这些,我们下篇文章见:)



    展开全文
  • 泊松融合-opencv代码实现

    千次阅读 2016-12-02 08:48:16
    opencv实现的泊松融合,代码没有经过其他处理;#include<opencv2\opencv.hpp>using namespace cv; int main() { Mat src = imread("images/015-CT.png"); Mat dst = imread("images/015-MR-T2.png"); if(src....
  • 图像处理之简化色彩(含OpenCV代码)

    千次阅读 2017-03-11 21:50:12
    图像处理之简化色彩(含OpenCV代码)
  • CMake编译运行OpenCV程序_debug总结

    千次阅读 2015-11-11 16:39:54
    cmake编译运行OpenCV程序任务:测试作者源代码,cmake编译运行OpenCV1. 理想状态为成功编译运行不报错作者已经写好了CMakeList.txt,并有安装使用的说明文档OpenCV用cmake编译的官方文档: Using OpenCV with gcc ...
  • camshift目标追踪opencv代码vs2010完美运行
  • 如何编译运行opencv的sample

    千次阅读 2018-02-04 15:06:40
    如何编译运行opencv的sample 前言:之前在树莓派上配置了opencv,但还不知道怎么使用,知道opencv有很多的sample,所以现在记录一下如何使用opencv的sample。 设备:华硕FX50V 环境:已经配置好opencv的ubuntu ...
  • 二、将OpenCV库源代码加载到工程中和应用程序一起编译,也就是说最后生成的可执行文件可以单独运行,不需要OpenCV的动态链接库。 下面将详细介绍第二种方法。 首先要确定程序使用了OpenCV的哪些库函数,一般来说,
  • OpenCV代码

    热门讨论 2012-01-04 10:58:39
    开源的图像识别源代码。可以识别火焰等较复杂的图像。经验证,识别率还行。对于精度要求不高的应用,可以直接使用。
  • OpenCV getTickCount统计代码运行时间

    千次阅读 2015-04-26 09:36:35
    OpenCV编程中,可能会遇到比较不同算法之间的运算复杂度及时耗,下面给出一个统计代码运行时间的demo,里面用到getTickCount函数,使用时需要添加头文件#include "opencv2/imgproc/imgproc.hpp"。 #include #...
  • OpenCV】在没有安装OpenCV的电脑运行OpenCV程序

    万次阅读 多人点赞 2012-10-12 23:48:23
    我们在做项目时,通常需要把依赖于opencv,vs(例如vs2005),或者vc(例如vc6.0)的程序,在没有安装相关环境的电脑上去运行。那么现在有哪些方法可以摆脱这些依赖?(提供可行建议即可得10分) ...
  • 【ZYNQ_LINUX】zynq 上移植 opencv 代码

    千次阅读 2018-02-06 19:54:42
    通过查找资料和网上的博客,zynq 上移植opencv 代码,可能需要以下几步,通常要先有 opencv代码,然后再有交叉编译出结果,但是这里会使用到一些opencv 的库,所以在zed 板上跑的时候首先要有opencv 的库镜像文件,...
  • 如何生成能在没有安装opencv库及vs2015环境的电脑上运行的exe文件 项目基本算法已经完成,甲方需要一个可以运行的demo。目前,程序能在自己的电脑上正常运行。移植到其他win7/win10系统上,运行失败。 寻找各种...
  • AndroidStudio不需要安装OpenCV Manager,就可以运行openCV,实现人脸检测
  • OpenCV代码精妙之三 实现点集元素之间最小距离goodFeaturesToTrack 可传入一个参数 表示 返回的特征点像素距离需要 高于 该参数指定的值 具体如何实现的呢首先 goodFeaturesToTrack 返回的 特征点 是具有 所谓 强度...
  • Gabor的OpenCV2.4.2代码

    热门讨论 2012-08-07 17:09:54
    Gabor的OpenCV代码 文章地址http://blog.csdn.net/guoming0000/article/details/7839917 欢饮讨论
  • Initialization就是指将OpenCV Library添加到app package中,不需要安装OpenCV Manager这个app就能运行,官方文档有介绍,但是不详细,尤其是最后那句代码到底要放在什么地方很多人都不清楚,其实并不需要像官方...
  • CodeBlocks配置VS2013编译器并运行OpenCV

    千次阅读 2016-09-15 11:55:42
    CodeBlocks配置VS2013并运行OpenCV这里用的CodeBlocks版本是16.01,OpenCV版本是2.4.13,可以百度直接进官网下载安装。 打开CodeBlocks的Settings->Compiler,Selected compiler选择Microsoft Visual C++ 2010,...
  • OpenCV】测算代码运行时间

    千次阅读 2018-08-30 14:01:22
    OpenCV 有一个非常实用的函数可以用来测算函数或代码段的运行时间。
  • 最近在学习OpenCV,写点笔记总结一下,我用的学习环境是Ubuntu16.04+KDvelop4.7+OpenCV3.2.0。  Linux下的OpenCV程序的编译有两种方式。一种是g++,另一种是cmake,自己在这里直接采用的是KDvelop4.7,使用该IDE的...
  • 获取了旋转角度就可以用仿射变换对图像进行矫正,图像旋转的代码可以参考我的博文http://blog.csdn.net/wenhao_ir/article/details/51469085 旋转角度怎么获取?可以对图像作傅里叶变换获取这个角度,具体怎么求,...
  • OpenCV代码编译

    千次阅读 2019-03-26 14:34:54
    文章目录编译OpenCV代码1.下载安装CMake2.使用 CMake 生成 OpenCVd 源代码工程的解决方案3.编译OpenCV源码 编译OpenCV代码   想要在 Windows 平台下生成 OpenCV 的解决方案,需要一个名为 CMake 的开源软件。 ...
  • 适合VC++6.0的是opencv1.0版本。可从此处下载http://www.opencv.org.cn/index.php/Download 注意:在安装的时候加入环境变量(默认安装即可)。 1、加入库文件、包含文件和资源文件 tools-options-directories ...
  • kalman 滤波 演示与opencv代码

    万次阅读 热门讨论 2011-04-12 20:57:00
    在机器视觉中追踪时常会用到预测算法,kalman是你一定知道的。它可以用来预测各种状态,比如说位置,速度等。...opencv给出了kalman filter的一个实现,而且有范例,但估计不少人对它的使用并不清楚
  • Ubuntu环境下编译运行OpenCV程序cmake-gui生成可执行文件 刚开始学习OpenCV,一边学习一边写博客记录一些学习笔记,初次写博多多指教。 step1:建立文件夹包含代码和处理图片 step2:添加cmake编译需要的文件 ...
  • 以双边滤波为例,如果检测到是Intel GPU则用bilateral_float4核函数,而其他GPU则用bilateral核函数,为什么对Intel GPU用浮点型,而且还能用float4,如果其他GPU能用int4 或uchar4来提升速度吗?

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 137,480
精华内容 54,992
关键字:

怎么运行opencv代码