第一步:安装源码前先安装好需要的第三⽅方环境

需要的编译环境
■ [compiler] sudo apt-get install build-essential

#  注释说明

64位ubuntu在安装build-essential遇到依赖问题的解决办法

解决方案的博客地址:https://blog.csdn.net/sunranlb/article/details/46946147

依赖的库
■ [required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev
libswscale-dev

可以选择安装的
■ [optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev
libtiff-dev libjasper-dev libdc1394-22-dev

还有一点需要重要的特殊说明,就是在Ubuntu可视化界面操作的时候不要随便取消更新勾选中的东西,不然很容易出现问题!!!

将上传的两个OpenCV源码解压到   ~ 目录中

解压好后 依次执行以下的命令

cd  opencv

mkdir build

cd build

最后执行编译命令

cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules/ -D  CMAKE_INSTALL_PREFIX=/usr/local ..

出现这个结果的话  就表示成功的安装了

中间可能会遇到  下载一个文件下载不完的问题,只要将提前下载好的文件复制进去  即可解决这个问题

最后的一步

在  ~/opencv/build  中分别执行命令

make

sudo  make  install   # 如果不加上sudo的话就会报一个权限的错误!

编辑配置文件

vim /etc/ld.so.conf

在下面一行加上

/usr/local/lib

重新加载配置

sudo ldconfig

检测OpenCV是否安装好的代码

test_opence.cpp

#include <opencv2/highgui/highgui.hpp>

int main(int argc,char* argv[]){

const std::string window_name = "lena";
const std::string input_pic = "lena.jpg";
cv::Mat test_pic = cv::imread(input_pic);
if(test_pic.empty()){
std::cout<<"no input image"<<std::endl;
return -; }
cv::namedWindow(window_name);
cv::imshow(window_name,test_pic);
cv::waitKey();
return ; }

编译代码

g++  -o  test_opencv test_opencv.cpp -lopencv_core -lopencv_highgui -lopencv_imgcodecs

执行代码

./test_opencv.cpp

执行效果  ,如果出现lena.jpg  图 就证明安装成功!

OpenCV学习一《Linux下安装OpenCV》的更多相关文章

  1. Python下的OpenCV学习 01 —— 在Linux下安装OpenCV

    一.OpenCV简要介绍 OpenCV是一个跨平台的计算机视觉库,可以运行在Windows.Linux.MacOS等操作系统上.OpenCV提供了众多语言的接口,其中就包含了Python,Python ...

  2. Linux下安装OpenCV+Python支持

    以下说明在Linux下Python和OpenCV结合安装的过程,Python要使用OpenCV模块,则必须导入OpenCV提供的包,所以要提供Python支持,首先在安装OpenCV前安装必要的组件, ...

  3. Linux下安装opencv模块

    最近微信上流行的给自己的头像加一顶圣诞帽,想用python写一个程序自己实现一下,其中需要用到opencv import cv2 现在记录一下如何在Linux系统(ubutun)下安装该模块: 参考了 ...

  4. Opencv学习笔记1:安装opencv和VS2015并进行环境配置

    用了Opencv一段时间了,简单记录一下opencv在vs2015下的配置. 第一部分:OpenCV3.2.0的下载 OpenCV官方下载地址: https://opencv.org/releases ...

  5. Java学习笔记——Linux下安装配置tomcat

    朝辞白帝彩云间,千里江陵一日还. 两岸猿声啼不住,轻舟已过万重山. ——早发白帝城 首先需要安装配置JDK,这里简单回顾下.Linux下用root身份在/opt/文件夹下创建jvm文件夹,然后使用ta ...

  6. Linux下安装opencv with-ffmpeg解决无法读取视频的问题

    1. 编译安装ffmpeg 下载源码,执行 ./configure --disable-yasm --enbale-shared --prefix=/usr/local/ffmpeg 即可. 2. 下 ...

  7. 【转】linux下安装opencv

    Installation in Linux These steps have been tested for Ubuntu 10.04 but should work with other distr ...

  8. Linux下安装opencv(踩坑记录帖)

    1.首先安装依赖项:sudo apt install build-essential sudo apt install build-essentialsudo apt install cmake gi ...

  9. redis学习之一 - linux下安装配置

    Content 0.序 1.如何安装? 2.配置参数及其意义 3.设为linux服务 0.序 本文主要是记录Redis在 Centos下的安装配置 .文中如无特别说明.表示redis-3.2.10代码 ...

随机推荐

  1. jQuery事件--change([[data],fn])、on(events,[selector],[data],fn)和hover([over,]out)

    change([[data],fn]) 概述 当元素的值发生改变时,会发生 change 事件. 该事件仅适用于文本域(text field),以及 textarea 和 select 元素.当用于 ...

  2. Azure Messaging-ServiceBus Messaging消息队列技术系列2-编程SDK入门

    各位,上一篇基本概念和架构中,我们介绍了Window Azure ServiceBus的消息队列技术的概览.接下来,我们进入编程模式和详细功能介绍模式,一点一点把ServiceBus技术研究出来. 本 ...

  3. oracle查询每隔5分钟区间内的数据量

    SELECT COUNT (DISTINCT tmp.PLATE) totalNum, tmp.newTime FROM ( SELECT T .LICENSE_PLATE plate, TO_CHA ...

  4. 20155228 2016-2017-2 《Java程序设计》第2周学习总结

    20155228 2006-2007-2 <Java程序设计>第2周学习总结 教材学习内容总结 类型 Java可以区分为基本类型和类类型(或称参考类型).对于基本类型,使用时得考虑一下数据 ...

  5. python 读csv数据 通过改变分隔符去掉引号

    import csv with open(r'C:\Temp\ff.csv') as f: f_csv=csv.reader(f,delimiter='\t') headers=next(f_csv) ...

  6. python递归的例子

    例子1:递归实现嵌套列表求和 #encoding=utf-8 a=[[1,2,3],  [4,5,6],  [7,8,9]]def listsum(L):    result=0    for i i ...

  7. golang学习笔记5 用bee工具创建项目 bee工具简介

    golang学习笔记5 用bee工具创建项目 bee工具简介 Bee 工具的使用 - beego: 简约 & 强大并存的 Go 应用框架https://beego.me/docs/instal ...

  8. [trick] 玩弄svn的目录结构

    今天在使用svn进行版本管理时出现了一个小问题: 原本在s目录下有一个c目录,不知为何被删除了,而svn st命令并没有认为它消失,svn up命令也无法下载回来: 从另一个地方拷贝过来一个c,svn ...

  9. multer中间件

    1.Multer是node.js的一个中间件,用于处理multipart/form-data类型的表单数据,它主要用于上传文件.(Multer不会处理任何非multipart/form-data类型的 ...

  10. Deeplearning 两层cnn卷积网络详解

    https://blog.csdn.net/u013203733/article/details/79074452 转载地址: https://www.cnblogs.com/sunshineatno ...