关于OpenCV,有中文的官方站点。里面翻译了官网的教程和API等。中文官方Tutorials见这里:【Tutorials


一、Ubuntu下的安装

能够选择直接从库里安装,或者手动编译安装,请參考这里:【Installation in Linux

1. 从repository(库)中安装

sudo apt-get install libopencv-dev python-opencv

2. 手动编译安装

首先要解决OpenCV的依赖问题,直接在终端下执行

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

从【

source=navbar">sourceforge】上面下载下来源代码,只是不知道为啥。我的Ubuntu15.04不能编译open-2.4.11,仅仅能再下个opencv-2.4.10。进去文件夹。直接用cmake编译例如以下

mkdir build
cd build
cmake ..
sudo make
sudo make install

3. 样例

编译完了就先来跑个样例吧,见这里:【Linux下的样例】,事实上就是个寻常的C++样例,新建cpp和txt文件,编译执行即可。


DisplayImage.cpp

#include <cv.h>
#include <highgui.h> using namespace cv;
int main( int argc, char** argv )
{
Mat image;
image = imread( argv[1], 1 ); if( argc != 2 || !image.data )
{
printf( "No image data \n" );
return -1;
} namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
imshow( "Display Image", image );
waitKey(0); return 0;
}

CMakeLists.txt

project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

编译

cd <DisplayImage_directory>
cmake .
make

执行

./DisplayImage lena.jpg

著名的lena图能够给个链接:【lena图


二、用Python开发OpenCV

发现除了C++。Python对OpenCV的支持也特别好。

官方的接口文档中,一般都会给出C++。C和Python三种接口。

Python支持

首先。安装python的opencv模块

sudo apt-get install python-opencv

以下给个样例

import cv2

img = cv2.imread("lena.jpg") # load image
cv2.imshow("image", img) # show image
cv2.waitKey(0) # wait until key pressed

命名为test.py。直接在终端里

python test.py
# or
python ./test.py

直接执行就能够了。


这个样例仅仅是简单的把图片载入进来,并依照原来的大小显示出来,这几个函数也有重载。详细使用方法就要去查了。

在github上发现一个大牛写的python-opencv的文档,太棒了,链接在这里:【OpenCV-Python Tutorials】。

有函数不会用的,直接在左边搜索即可了。

能够和官方的【Tutorials】结合起来看。

OpenCV入门笔记(一) Linux下的安装的更多相关文章

  1. Linux入门基础教程之Linux下软件安装

    Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...

  2. 操作笔记:linux下安装mysql

    1,检查linux下是否安装了mysql shell指令如下: [root@iZ945sgm0ugZ ~]# rpm -qa|grep -i mysql 如果有的话:做出挨个删除(eg:rpm -ev ...

  3. 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记

    Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...

  4. [转]Caffe在Linux下的安装,编译,实验

    Caffe在Linux下的安装,编译,实验  原文地址:http://www.cnblogs.com/evansyang/p/6150118.html 第一部分:Caffe 简介 caffe是有伯克利 ...

  5. linux下快速安装jenkins

    Linux下快速安装Jenkins 建议使用 FileZilla 工具简化以下步骤中移动.环境变量配置等步骤. 1      软件下载 l  Java:jdk-7u17-linux-x64.tar.g ...

  6. Redis(二)linux下redis安装

    上篇讲解了redis在windows下的安装,接下来看看在linux下如何安装redis(纯菜鸟入门级别)? (1)redis的下载及编译 这里,首先进入存放文件目录(我的云服务器的是:cd /jel ...

  7. Linux下Mysql安装教程详解

    Linux下软件安装一般有三种方式:RPM包方式(通过Redhat 第三方包管理系统).二进制包和源码包.本篇主要介绍二进制包安装mysql数据库的方式. 如何获取二进制源码包 当然是到mysql官网 ...

  8. Linux下yum安装MySQL

    写这篇文章的原因是:在刚开始使用Linux操作系统时想要搭建LAMP环境,于是开始在Google和百度上各种寻找资料,碰到了不是很多的问题后,我决定写这篇文章总结一下在Linux下yum安装MySQL ...

  9. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  10. 【夯实PHP基础系列】linux下yum安装PHP APC

    Alternative PHP Cache(可选PHP缓存),依赖于 PECL扩展库 用源码方式安装,直接yum就行了:首先要安装apc的依赖包:yum install php-pear php-de ...

随机推荐

  1. xml了解

    Xml简介 ➢XML指可扩展标记语言(Extensible Markup Language) ➢XML被设计用于结构化.存储和传输数据 ➢XML是一种标记语言,很类似于HTML ➢XML没有像HTML ...

  2. python - 接口自动化测试实战 - case1 - 优化版

    题目: 基于以下两个接口和数据完成接口自动化测试,并生成测试报告: '''登录 login='http://47.107.168.87:8080/futureloan/mvc/api/member/l ...

  3. PHP 开启或关闭错误提示

    如果不具备修改 php.ini 的权限,可以如下: // 只需在php文件中加入这两句即可开启PHP错误提示 ini_set("display_errors", "On& ...

  4. 使mysql的表内容可以输入中文内容

    修改数据库的字符集mysql>use mydb mysql>alter database mydb character set utf8;

  5. 我的PC必装软件

    我的PC必装软件 TeXLive LaTeX套装 WinEdt LaTeX编辑器 PyCharm Python IDE Inkscape 矢量图制作,我根本不会用,但是常用来把SVG转成*.tex文件 ...

  6. ICCID

     ICCID:Integrate circuit card identity 集成电路卡识别码(固化在手机SIM卡中) ICCID为IC卡的唯一识别号码,共有20位数字+英文组成,其编码格式为:XXX ...

  7. 【mysql优化 3】嵌套循环连接算法

    原文地址:Nested-Loop Join Algorithms mysql在表之间执行连接操作,包括了使用循环嵌套算法或者其他在此基础上的变形. 循环嵌套连接算法: 一个简单的嵌套循环连接(NLJ: ...

  8. CSS编码规范(转)

    1 前言 CSS作为网页样式的描述语言,在百度一直有着广泛的应用.本文档的目标是使CSS代码风格保持一致,容易被理解和被维护. 虽然本文档是针对CSS设计的,但是在使用各种CSS的预编译器(如less ...

  9. 【NOI2017】游戏

    好久没写 $2-sat$ 了……(话说这东西哪里还考过) 题意 有 $3$ 种赛车 $A,B,C$ 和 $4$ 种赛道 $a,b,c,x$,赛车 $A$ 不适用于赛道 $a$,赛车 $B$ 不适用于赛 ...

  10. java面试题之如何判断一个对象是否应该被回收

    常用的有两种办法: 引用计数法:(无法解决对象循环引用的问题,导致对象无法被回收) 可达性分析: