ubuntu16.04/18.04安装vscode和opencv3.4.6教程


一、Opencv3.4.6

1.install

  1. 去官网下载opencv,在本教程中选用的时opencv3.4.6,其他版本的配置方法异曲同工。
    下载链接http://opencv.org/releases.html,选择sources版本

  2. 进入下载的路径,解压下载下来的zip包

cd XXX
unzip opencv-3.4.6.zip
  1. 安装一些东西(哪个不行就算了)
sudo apt-get update
sudo apt-get install vim
sudo apt-get install g++
sudo apt-get install gcc
sudo apt-get install cmake
sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev
sudo apt-get install libavcodec-dev
sudo apt-get install libavformat-dev
sudo apt-get install libswscale-dev 
sudo apt-get install libatlas-base-dev 
sudo apt-get install gfortran
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt-get update
sudo apt-get install libjasper1 libjasper-dev
  1. 进入到解压后的文件包中,创建编译文件夹
cd XXX/opencv-3.4.6
mkdir Release
cd Release
  1. CMAKE
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

如果以下错误:

qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file     or         directory

执行以下指令:

sudo apt-get install qt5-default
  1. MAKE
sudo make
  1. 安装
sudo make install
  1. 执行完毕后OpenCV编译过程就结束了,接下来就需要配置一些OpenCV的编译环境首先将OpenCV的库添加到路径,从而可以让系统找到
sudo gedit /etc/ld.so.conf.d/opencv.conf 

执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加

/usr/local/lib  

在这里插入图片描述

  1. 执行如下命令使得刚才的配置路径生效
sudo ldconfig  
  1. 配置bash
sudo gedit /etc/bash.bashrc  

在最末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  

保存,执行如下命令使得配置生效

source /etc/bash.bashrc  
  1. 更新
sudo updatedb  

2.test

cd到opencv-3.4.1/samples/cpp/example_cmake目录下
我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下

cd ..
cd samples
cd cpp
cd example_cmake
cmake .
make
./opencv_example

参考:
ubuntu16.04安装opencv3.4.1教程
Ubuntu16.04安装OpenCV3.4.2


二、VScode

1.下载

先下好gcc、g++

sudo apt-get update
sudo apt-get install gcc
sudo apt-get install g++

下载VScode:
图形推荐(一键式操作,第一推荐)在ubuntu18.04版本安装vscode
在线umake:Ubuntu 16.04 安装VSCode
本地deb(不会再有问题,第二推荐)
在官网里(https://code.visualstudio.com/Download)里下载Linux的.deb格式
然后安装

cd 文件存在的位置
sudo dpkg -i xxx.deb

2.配置

下面分为安opencv和不安的情况

(1)安装c/c++插件(都必须有)

首先通过左边栏的Extension在这里插入图片描述栏目安装C++插件

在这里插入图片描述

(2)建立工程(都必须有)

由于VScode是以文件夹的形式管理工程的,因此我们首先新建一个文件夹

然后通过VScode打开此文件夹:File→Open Folder

新建main.cpp文件(Ctrl+N)并输入程序:

#include<iostream>
using namespace std;
int main()
{
	cout<<"Hello World\n";
	return 0;
}

保存Ctrl+S,记住要写后缀(.cpp),不然
Ubuntu下VScode编译报错:File not recongnized不可识别的文件格式

(3)配置launch.json(都必须有)

点击左侧的Debug按钮选择添加配置(Add configuration),然后选择C++(GDB/LLDB),然后选个Default,将自动生成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": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceRoot}/${fileBasenameNoExtension}.main.out",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceRoot}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "build"
        }
    ]
}

(4)配置tasks.json(不安装opencv的情况)

Ctrl+Shift+P打开面板

输入Task:Configure Default Build Task
(有的要输入Edit,再输入Task:Configure Default Build Task)
在这里插入图片描述

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "command": "g++",
    "args": [
        "-g", 
        "-std=c++11", 
        "${file}", 
        "-o", 
        "${fileBasenameNoExtension}.main.out",
    ],// 编译命令参数
    "problemMatcher":{
        "owner": "cpp",
        "fileLocation":[
            "relative",
            "${workspaceFolder}"
        ],
        "pattern":[
            {
                "regexp": "^([^\\\\s].*)\\\\((\\\\d+,\\\\d+)\\\\):\\\\s*(.*)$",
                "file": 1,
                "location": 2,
                "message": 3
            }
        ]
    },
    "group": {
        "kind": "build",
        "isDefault": true
    }
}

(5)配置tasks.json(安装opencv的情况)

Ctrl+Shift+P
输入Edit
选择Task:Configure Default Build Task
在这里插入图片描述

{
    // 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++",
            "args": [
                "-g",
                "-std=c++11",
                "${file}",
                "-o",
                "${fileBasenameNoExtension}.main.out",
			        "-I", "/usr/local/include",
			        "-I", "/usr/local/include/opencv",
			        "-I", "/usr/local/include/opencv2",
			        "-L", "/usr/local/lib",
			        "-l", "opencv_core",
			        "-l", "opencv_imgproc",
			        "-l", "opencv_imgcodecs",
			        "-l", "opencv_video",
			        "-l", "opencv_ml",
			        "-l", "opencv_highgui",
			        "-l", "opencv_objdetect",
			        "-l", "opencv_flann",
			        "-l", "opencv_imgcodecs",
			        "-l", "opencv_photo",
			        "-l", "opencv_videoio"
            ],
            "problemMatcher":{
                "owner": "cpp",
                "fileLocation":[
                    "relative",
                    "${workspaceFolder}"
                ],
                "pattern":[
                    {
                        "regexp": "^([^\\\\s].*)\\\\((\\\\d+,\\\\d+)\\\\):\\\\s*(.*)$",
                        "file": 1,
                        "location": 2,
                        "message": 3
                    }
                ]
            },
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

(6)c_cpp_properties.json(安opencv的情况)

Ctrl+Shift+P
输入Edit
选择C/C++:Edit Configurations(JSON)
在这里插入图片描述

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
                "/usr/include",
                "/usr/local/include/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "/usr/bin/cpp",
            "cStandard": "c11",
            "cppStandard": "c++11",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

(7)快速查看已配置的文件

左侧Explorer→MAIN→.vscode
在这里插入图片描述

(8)测试一下

在这里插入图片描述

Try.cpp

#include<opencv2/opencv.hpp>
using namespace cv;
int main()
{
    
    Mat srcImage=imread("1.jpg");
    imshow("Origin",srcImage);
    waitKey(0);
    return 0;
}

1.jpg

在这里插入图片描述

效果

在这里插入图片描述

3.参考:

https://blog.csdn.net/weixin_43374723/article/details/84064644#commentBox
https://blog.csdn.net/zzz_xxj/article/details/86568353

4.神奇的错误

  1. 检查代码的头文件,符号(; 、(、))
  2. Ubuntu下VScode编译报错:File not recongnized不可识别的文件格式:https://blog.csdn.net/sandalphon4869/article/details/94410509
  3. Ubuntu下编译错误:Unable to open ’raise.c‘:
    https://blog.csdn.net/sandalphon4869/article/details/94414403

三、cmake编译

Linux 使用cmake构建OpenCV项目
Ubuntu18.04下安装配置VScode以及VS的使用总结

  • 43
    点赞
  • 369
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
### 回答1: Ubuntu 16.04和18.04的区别主要在以下几个方面: 1. 内核版本:Ubuntu 16.04使用的是4.4内核,而Ubuntu 18.04使用的是4.15内核,后者支持更多的硬件设备。 2. 桌面环境:Ubuntu 16.04默认使用Unity桌面环境,而Ubuntu 18.04则改为使用GNOME桌面环境。 3. 应用程序:Ubuntu 18.04中包含了一些新的应用程序,如GNOME Photos、GNOME Calendar等,同时也更新了一些旧的应用程序,如Nautilus文件管理器。 4. 系统更新:Ubuntu 18.04的更新机制更加智能,可以自动检测并安装重要的安全更新,同时也提供了更加友好的更新管理界面。 5. 支持周期:Ubuntu 16.04的支持周期为5年,而Ubuntu 18.04的支持周期为10年,后者更加适合企业用户。 ### 回答2: Ubuntu 16.04和18.04是两个版本的Ubuntu操作系统,它们之间存在一些区别。以下是它们之间的一些区别: 1. 内核版本:Ubuntu 16.04的默认内核版本是4.4,而Ubuntu 18.04的默认内核版本为4.15。新版内核支持更多硬件,更好的性能和安全性。 2. 桌面环境:Ubuntu 16.04使用Unity桌面环境,而Ubuntu 18.04使用GNOME桌面环境。GNOME桌面环境比Unity更加简单,快捷和易用。 3. 应用程序:Ubuntu 18.04引入了一些新的应用程序,例如GNOME的文件管理器Nautilus,LibreOffice 6.0等,并且已经删除了一些旧的应用程序,如旧版计算器等。 4. Wayland:Ubuntu 18.04默认使用Wayland显示服务器,而不是传统的X.Org显示服务器。Wayland比X.Org显示服务器更加现代化,支持高分辨率和触摸屏等。 5. 系统设置:Ubuntu 18.04加入了一个新的系统设置应用程序,用于管理各种系统设置,例如网络设置,电源管理等。 6. Langpacks:Ubuntu 18.04为多语言支持添加了更多的langpacks,这使得用户更容易使用Ubuntu使用他们所熟悉的语言。 综上所述,Ubuntu 18.04相对于Ubuntu 16.04有一些显著的改进,如更好的性能和安全性,新的桌面环境和应用程序,更现代的显示服务器等。这使得Ubuntu 18.04可能更适合那些希望享受现代化体验和更好使用体验的用户。 ### 回答3: Ubuntu 是一款基于 Debian GNU/Linux 的 Linux 操作系统,适用于服务器和个人电脑。Ubuntu 16.04 和 18.04 都是 LTS 版本,分别在 2016 年 4 月和 2018 年 4 月发布。从用户体验、性能、更新、软件管理等方面来看,它们有以下区别: 1. 用户界面 Ubuntu 16.04 默认使用 Unity 桌面环境,而 Ubuntu 18.04 则默认使用 GNOME Shell。GNOME 显示名称和面板位置有所改变,从屏幕顶部移到了左侧。从整体视觉效果来看,Ubuntu 18.04 更加现代化和简约。 2. 性能提升 与 Ubuntu 16.04 相比,Ubuntu 18.04 的性能得到了显著提升。 Ubuntu 18.04 改进了内存管理、CPU 调度、文件系统和显卡驱动等方面,提高了系统响应速度和流畅度。 3. 优化更新 Ubuntu 18.04 引入了 Livepatch,可实现无需重启系统就能更新内核补丁和安全补丁。此外,Ubuntu 18.04 取消了菜单栏中的搜索功能,避免在更新时出现问题。 4. 软件变动 Ubuntu 18.04 中的软件包含了最新的 GNOME 应用程序,如 Files、Calculator、Weather 等。同时,Ubuntu 18.04 移除了一些旧的包,如图像查看器和 GIMP 2.8 等,并推荐使用更好的替代品。 5. 硬件支持 Ubuntu 18.04 对最新的硬件设备提供了更加全面和完美的支持。新版本针对 SSD 和 NVMe 设备提供了更好的支持,同时增强了更多设备的视频和音频功能。 总之,从对于新硬件的完善支持、更好的功能优化、更简捷的用户界面和更新优化等方面来看,Ubuntu 18.04 相比 Ubuntu 16.04 的发展和进步值得用户信赖和选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值