centos7安装和编译opencv4.5.0

article/2025/1/18 3:25:15

目录

一、centos7的安装

二、gcc的安装

三、cmake的安装

四、Opencv4.5.0的安装

五、使用Opencv编写C++图像处理程序

六、部署


一、centos7的安装

建议使用最小安装方法,安装出来的操作系统比较干净,参考教程 https://blog.csdn.net/u010476739/article/details/106806683

另外,安装时CPU最好开4个,内存7G以上。因为后面要编译opencv,对编译性能要求稍微高一些。

二、gcc的安装

默认的 CentOS 软件源上包含一个名称为Development Tools的软件包组,这个组合包含了 GCC 编译器以及一系列库文件,还有其他编译软件需要用到的工具。运行代码如下:

sudo yum group install "Development Tools"

安装完成后使用命令:

gcc --version

来验证安装是否成功,效果如下:

三、cmake的安装

1. 安装wget

yum install -y wget

2. 获取CMake源码包

wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz

3. 解压CMake源码包

tar -zxvf cmake-3.6.2.tar.gz

4. 编译安装

cd cmake-3.6.2
./bootstrap && make -j4 && sudo make install

最后使用命令:

cmake --version

可以查看当前安装的cmake版本号。

四、Opencv4.5.0的安装

1. 安装依赖

sudo yum -y install epel-release
sudo yum -y install gtk2-devel
sudo yum install -y libpng-devel
sudo yum install -y jasper-devel
sudo yum install -y openexr-devel
sudo yum install -y libwebp-devel
sudo yum -y install libjpeg-turbo-devel 
sudo yum -y install libtiff-devel 
sudo yum -y install tbb-devel eigen3-devel
sudo yum -y install boost boost-thread boost-devel
sudo yum -y install libv4l-devel

2. 下载opencv和opencv_contrib安装包:

git clone https://gitee.com/binghai228/opencv.git
cd opencv
git checkout 4.5.0
cd ..
git clone https://gitee.com/binghai228/opencv_contrib
cd opencv_contrib
git checkout 4.5.0			# 选择分支
cd ..

然后将opencv_contrib移动到opencv目录下,

然后进入opencv文件夹并创建build文件夹:

cd opencv
mkdir build
cd build 

此时opencv目录下结构如下图所示:

3. 额外配置

(1)去github或是其他网站把opencv_contrib的module缺失文件下载下来,然后放到opencv_contrib/modules/xfeatures2d/src目录下,文件列表如下,这里给一个我自己整理的下载链接:xfeatures2d

                            

        (2)将opencv/modules/features2d复制,然后粘贴到build目录

 

4. 编译和安装

首先确保在build目录下,然后输入下述命令:

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local  -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules/ -D WITH_TBB=OFF  -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D OPENCV_GENERATE_PKGCONFIG=ON .. 

然后输入下述命令进行编译:

make

这里不建议用make -j4或者make -j8进行编译,因为多线程编译虽然速度快但是容易出问题。中间如果因为特殊原因断了可以使用make命令再继续。

编译100%完成后最后输入下述命令进行安装:

make install

5. 配置opencv库可执行路径

首先安装vim:

sudo yum install -y vim

添加库路径–执行:

sudo ln -s /usr/local/lib64/pkgconfig/opencv4.pc /usr/share/pkgconfig/
sudo ldconfig

添加环境变量:

sudo vim /etc/profile

打开此文件,在文件末尾另起行加入如下两行:(保存,退出)

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib64/pkgconfig
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib64

最后令其生效:

source /etc/profile

接下来进行pkg-config配置,默认的pkg搜索链接路径/usr/lib/pkgconfig,需要将opencv.pc拷贝到pkg的默认路径下

cp /usr/local/lib64/pkgconfig/opencv4.pc /usr/lib/pkgconfig

然后输入命令:

ldconfig

重启以后,输入下面的命令查看当前opencv版本号:

pkg-config --modversion opencv4

如果安装正常,输出如下所示:

 

五、使用Opencv编写C++图像处理程序

1. 编写CMakeLists.txt

# 声明要求的 cmake 最低版本
cmake_minimum_required( VERSION 3.1 )# 声明一个 cmake 工程
project( pro )# 设置编译模式
set( CMAKE_BUILD_TYPE "Release" )#添加OPENCV库
#指定OpenCV版本,代码如下
#find_package(OpenCV 3.3 REQUIRED)
#如果不需要指定OpenCV版本,代码如下
find_package(OpenCV REQUIRED)#添加OpenCV头文件
include_directories(${OpenCV_INCLUDE_DIRS})#显示OpenCV_INCLUDE_DIRS的值
message(${OpenCV_INCLUDE_DIRS})# 添加一个可执行程序
# 语法:add_executable( 程序名 源代码文件 )
add_executable( main main.cpp )# 将库文件链接到可执行程序上
target_link_libraries( main  ${OpenCV_LIBS})

2. 编写C++文件main.cpp

#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;int main(){Mat image;image = imread("./1.jpg");if (image.empty()) {cout << "Error! Input image cannot be read...\n";return -1;}cout<<"图像宽为:"<<image.cols<<"\t高度为:"<<image.rows<<"\t通道数为:"<<image.channels()<<endl;return 0;
}

然后正常的使用cmake编译和运行即可。

六、部署

在一台CentOS7上的机器写完的opencv程序如何部署到另一台CentOS7的机器上,本小节实现以下这个功能。首先安装gcc,然后拷贝可执行程序到目标机器上,提升可执行程序权限:

chmod +x main

步骤1. 编辑链接配置文件

vim /etc/ld.so.conf.d

步骤2. 确认内容是否为如下,不是则修改为如下:保存并退出

include /etc/ld.so.conf.d/*.conf

步骤3. 进入目录内,创建*.conf文件,文件名随意,扩展名必须为.conf

cd /etc/ld.so.conf/
vim libmy.conf 

步骤4. 在文件内部,添加so的路径,保存并退出

/home/czd/eclipse-workspacee/calllib/Debug

步骤5. 执行命令时期生效

sudo ldconfig

程序在运行时寻找so库就会到添加的目录中寻找。

 

 

 


http://chatgpt.dhexx.cn/article/ESvdQRRJ.shtml

相关文章

个人使用:Windows下 OpenCV 的下载安装(2021.12.4详细)

一、下载OpenCV   到OpenCV官网Release(发布)板块下载OpenCV-4.5.4 Windows。 下载后是这样的 然后双击他&#xff0c;解压&#xff0c;就是大佬们说的安装&#xff0c;实质就是解压一下&#xff0c;解压完出来一个文件夹&#xff0c;其他什么也没发生。你把这个文件夹放在哪…

彻底删除aws亚马逊服务器使之不再计费

彻底删除aws亚马逊服务器使之不再计费 打开你的aws中的esc 选中之后&#xff0c;选择 stop, 之后&#xff0c;再 terminate 然后点击左侧的volume那查看实例, 如果有 先detach volume, 分离实例和卷。 然后在Action上选择delete volume 彻底删除卷。 删除卷之后&#xff0c;ter…

WinSCP 连接 AWS 服务器

WinSCP 连接 AWS 服务器 前言步骤 前言 基于目前官网上似乎没有 WinSCP 连接教程&#xff0c;所以这里简单记录一下希望对喜欢 WinSCP 的小伙伴有帮助 步骤 点击“高级” “验证”中选择自己的私钥文件&#xff08;.pem&#xff09;, WinSCP 会自己根据这个私钥文件生成.ppk…

【aws】专有网络配置

前言 aws服务器相对于其它公有云来说&#xff0c;相对比较稳定&#xff0c;本文记录一次aws的专有网络的设置方法&#xff0c;望大家指点。 二、配置 1、配置VPC 2、配置子网&#xff0c;根据需求要配置两个子网&#xff0c;一个是配置弹性ip上网&#xff0c;一个是nat上网。 …

centos云服务器亚马逊,亚马逊云服务器AWS安装CentOS

亚马逊云服务器默认创建的实例&#xff0c;在停止之后再启动的情况下&#xff0c;IP会发生改变。所以我们最好先创建一个弹性IP&#xff0c;即EIP&#xff0c;不过我也不清楚这个费用。 1、按如图操作创建一个弹性IP&#xff0c;弹性IP创建之后可以随便绑定到该region下的实例 …

AWS白皮书 – 安全性

本文讲解AWS良好架构框架&#xff08;AWS Well-Architected Framework&#xff09;里其中五大支柱之一&#xff1a;安全性&#xff08;Security&#xff09; 设计原则 在所有层面考虑安全性&#xff1a;除了要在传统的防火墙上考虑安全性之外&#xff0c;我们还需要在每个、安…

aws云服务器怎么使用_使用AWS的无服务器URL缩短器

aws云服务器怎么使用 Are you sick of sending long cumbersome URL via mails or chats which looks messy. URL shortener is a great way of managing such long URLs and whats more amazing about it that you can make it in-house with a Serverless approach which low…

开发者在国内如何白嫖AWS服务器一年时间,怎样通过SSH工具连接AWS?免费的服务器有什么样的限制?

只要服务器一年快结束时&#xff0c;注销账号再重新注册就能再次使用一年&#xff0c;周而复始&#xff0c;无限白嫖 需要&#xff1a;国内信用可&#xff0c;未注册过AWS的邮箱 每月有多少流量&#xff1f; 答&#xff1a;100GB&#xff0c;AWS 客户每月可将 100GB 的数据免…

AWS云服务器重置,在AWS上重置/更改IAM用户密码的方法

我的IAM用户密码已过期,我无法访问AWS管理控制台进行重置,我可以在AWS上更改/重置IAM用户密码的唯一方法是使用AWS CLI,update-login-profile命令使IAM用户可以通过调用ChangePassword来更改自己的密码。你需要安装和配置AWS CLI工具才能按本文的方法操作,参考在Linux系统上…

AWS学习(一)——AWS云技术基础

目录 一、AWS入门1.如何建立一个AWS应用2. 如何与AWS交互3.AWS账户与权限 二、AWS计算1.Amazon EC22.Amazon Container Service3.Serverless和 AWS Lambda&#xff08;1&#xff09;AWS Fargate&#xff08;2&#xff09;AWS Lambda 三、AWS网络1.网络基础2.Amazon VPC&#xf…

AWS云服务器CentOS7.5安装MYSQL

目录 1、创建root账号密码 2、切换至root账号 3、安装wget 4、获取mysql rpm软件包 5、安装mysql服务器 6、验证服务器安装状态 1、创建root账号密码 ssh client远程登陆到AWS云服务器&#xff0c;输入如下指令&#xff0c;创建root账号密码 1.1 ssh client远程登陆到A…

aws云服务器_将本地服务器转换为边缘云,如AWS Outpost

aws云服务器 While it is not possible to compete with a public cloud in terms of feature set, elasticity, scale, managed services, geographic reach and bursty workloads, there are cases where it makes sense to run part of the workloads in an on-premises env…

亚马逊AWS云服务器 ubuntu系统登陆教程

1.登陆需要的东西&#xff1a;PuTTY,私有密钥文件xxx.pem&#xff0c;ubuntu默认登录用户名&#xff1a;ubuntu&#xff0c;公有DNS: ec2-xx-xx-xx-xx.us-east-2.compute.amazonaws.com 2.PuTTY下载地址https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 根据…

AWS云服务器怎么搭建?

AWS云服务器怎么搭建&#xff1f;   在开始搭建AWS云服务器之前&#xff0c;我们先来了解一下什么是云服务器。云服务器是基于云计算技术的一种虚拟化的计算资源&#xff0c;它使用云平台提供的计算资源和服务&#xff0c;通过网络实现远程访问和数据存储。云服务器具有弹性扩…

亚马逊云 aws EC2 配置root登录

大家好&#xff0c;我是Leon&#xff0c;前一段时间因为亚马逊云推出了免费一年的EC2云服务器&#xff0c;但是亚马逊登录不是一般的那样的方便&#xff0c;于是就有一个小朋友问我怎么登录EC2服务器&#xff0c;那么我就随笔写一篇从创建服务器实例到EC2用ec2-user登录&#x…

白嫖亚马逊AWS服务器

最近由于业务需求有一批数据需要通过AWS下载&#xff0c;恰好AWS有12个月免费计划&#xff0c;因此记录一下。 文章目录 注册切换服务器所在区域选择系统映像硬件配置添加存储核查服务器配置秘钥文件下载启动服务器连接服务器善后&#xff08;非常重要&#xff09; 注册 前往A…

aws云服务器怎么使用_使用AWS构建无服务器后端

aws云服务器怎么使用 Contrary to its name, serverless architecture does have servers. However, developers do not need to know anything about them — managing and provisioning servers are the responsibilities of the serverless platform host (in this case, AW…

铜川亚马逊云代理商:AWS云服务器怎么自建梯子?

AWS云服务器怎么自建梯子&#xff1f;   [本文由亚马逊云渠道商[聚搜云] [ www.4526.cn]撰写。 在当今互联网时代&#xff0c;隐私和安全性越来越受到人们的关注。为了保护个人信息和绕过网络地域限制&#xff0c;建立一个安全可靠的梯子变得越来越重要。使用AWS云服务器可以…

ubuntu18.0404 aws 云服务器启动和登陆 windows 虚拟机

ubuntu18.0404 aws 云服务器启动和登陆 windows 虚拟机 以及but your libfreerdp does not support H264. Please check Color Depth Settings.问题解决 打开远程界面&#xff0c;输入密码&#xff0c;即可登陆。 如果是ubuntu去连的话&#xff0c;就会出现如下错误&#xf…

在AWS云服务器上部署Docker,并使用Docker部署ownCloud私有云盘

1.启动实例&#xff08;Ubuntu 20.04&#xff09; 2.Mac 终端听过ssh方式连接AWS云服务器 2.1 2.2复制到终端 2.3:记得加上.ssh 2.4:链接成功 3.下载Docker 3.1:进入root权限界面 sudo -i 3.2 下载Docker 打开网址&#xff1a; Installing with Docker :: ownCloud Docume…