Jetson nano/NX安装Opencv Cuda版

2023-05-16

一、卸载系统自带的opencv

sudo apt-get purge libopencv* python-opencv 
sudo apt-get update
sudo apt-get install -y build-essential pkg-config

二、查看是否卸载干净

查看opencv安装库:pkg-config opencv --libs
查看opencv安装版本:pkg-config opencv --modversion

没有什么输出就是正常的。

三、下载opencv和opencv_contrib库(v3.4.1)

contrib库:https://github.com/opencv/opencv_contrib/releases
opencv版本:https://opencv.org/releases.html

把两个包解压并把opencv_contrib-3.4.1这整个文件夹拷贝到opencv-3.4.1文件夹里面

unzip opencv-3.4.1.zip 
unzip opencv_contrib-3.4.1.zip
cp -r opencv_contrib-3.4.1 opencv-3.4.1

再把opencv-3.4.1移动至主目录

四、安装opencv所需要的依赖项

sudo apt-get install -y cmake libavcodec-dev libavformat-dev libavutil-dev \
    libglew-dev libgtk2.0-dev libgtk-3-dev libjpeg-dev libpng-dev libpostproc-dev \
    libswscale-dev libtbb-dev libtiff5-dev libv4l-dev libxvidcore-dev \
    libx264-dev qt5-default zlib1g-dev libgl1 libglvnd-dev pkg-config \
    libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev mesa-utils     
sudo apt-get install python2.7-dev python3-dev python-numpy python3-numpy

五、修改OpenGL

cd /usr/lib/aarch64-linux-gnu/
sudo ln -sf libGL.so.1.0.0 libGL.so
sudo gedit /usr/local/cuda/include/cuda_gl_interop.h

修改(line #62~68) of cuda_gl_interop.h

//#if defined(arm) || defined(aarch64)
//#ifndef GL_VERSION
//#error Please include the appropriate gl headers before including cuda_gl_interop.h
//#endif
//#else
#include <GL/gl.h>
//#endif

六、编译

cd ~/opencv-3.4.1
mkdir build
cd build

以下是编译命令:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
        -D CMAKE_INSTALL_PREFIX=/usr/local \
        -D WITH_CUDA=ON \
        -D CUDA_ARCH_BIN=6.2 \
        -D CUDA_ARCH_PTX="" \
        -D ENABLE_FAST_MATH=ON \
        -D CUDA_FAST_MATH=ON \
        -D WITH_CUBLAS=ON \
        -D WITH_LIBV4L=ON \
        -D WITH_GSTREAMER=ON \
        -D WITH_GSTREAMER_0_10=OFF \
        -D WITH_QT=ON \
        -D WITH_OPENGL=ON \
        -D CUDA_NVCC_FLAGS="--expt-relaxed-constexpr" \
        -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.2 \
        -D WITH_TBB=ON \
        -D OPENCV_EXTRA_MODULES_PATH=~/Dowmload/opencv-3.4.1/opencv_contrib-3.4.1/modules \
         ../
sudo make -j4
sudo make install

七、链接库共享

sudo ldconfig -v 

八、将OpenCV的库添加到路径

sudo gedit /etc/ld.so.conf.d/opencv.conf 

(打开是个空文件)

添加以下:

/usr/local/lib

九、使配置路径生效

sudo ldconfig 

十、配置环境变量

sudo gedit /etc/bash.bashrc

在最末尾添加:

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

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

source /etc/bash.bashrc 

更新(可能出现找不到该命令,自行搜索解决)

sudo updatedb

十一、检查是否安装成功

查看opencv安装库:pkg-config opencv --libs
查看opencv安装版本:pkg-config opencv --modversion

有输出就是成功了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jetson nano/NX安装Opencv Cuda版 的相关文章

  • 使用 CUDA 进行逐元素向量乘法

    我已经在 CUDA 中构建了一个基本内核来执行逐元素两个复向量的向量 向量乘法 内核代码插入如下 multiplyElementwise 它工作正常 但由于我注意到其他看似简单的操作 如缩放向量 在 CUBLAS 或 CULA 等库中进行了
  • 如何将 OpenCV 等待键与 Chaquopy 一起使用

    我正在尝试使用 Chaquopy 将计算机视觉应用程序移植到 Android 当我尝试运行脚本时 以下行中出现以下错误 cv2 waitKey 100 打印到嵌入式 python 控制台的错误是 java chaquopy CQPEnv c
  • 带有 OpenCV 的增强现实 SDK [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 cudaFree() 之前需要 cudaDeviceSynchronize() 吗?

    CUDA 版本 10 1 帕斯卡 GPU 所有命令都发送到默认流 void ptr cudaMalloc ptr launch kernel lt lt lt gt gt gt ptr cudaDeviceSynchronize Is th
  • 使用相位相关和对数极坐标变换获得旋转位移

    我一直在编写一个脚本 它使用 cv2 计算两个图像之间的旋转位移phaseCorrelate method 我有两张图像 第二张是第一张图像的 90 度旋转版本 加载图像后 我将它们转换为对数极坐标 然后将它们传递到phaseCorrela
  • 为什么这些双精度数的返回值为-1.#IND?

    I have double score cvMatchContourTrees CT1 CT2 CV CONTOUR TREES MATCH I1 0 0 cout lt
  • brew 链接 jpeg 问题

    我正在尝试安装opencv在 Mac OSX Lion 上 brew install opencv 我收到以下错误 以及其他一些类似的错误 Error The linking step did not complete successful
  • opencv createsamples没有错误,但是没有找到样本

    我在用着this http coding robin de 2013 07 22 train your own opencv haar classifier html教程 我正在根据我的正面图像创建大量样本 我正在使用 Windows 这是
  • 查找彼此接近的对象边界

    我正在研究一个计算机视觉问题 其中问题的第一步是找到物体彼此靠近的位置 例如 在下图中 我感兴趣的是找到灰色标记的区域 Input Output 我目前的方法是首先反转图像 然后通过侵蚀进行形态梯度跟随 然后删除一些不感兴趣的轮廓 脚本如下
  • 如何在Python中使用tcp套接字发送和接收网络摄像头流?

    我正在尝试重新创建这个项目 https github com hamuchiwa AutoRCCar 我拥有的是服务器 我的电脑 和客户端 我的树莓派 我所做的与原始项目不同的是我尝试使用一个简单的网络摄像头而不是树莓派摄像头将图像从我的
  • opencv中矩阵的超快中值(与matlab一样快)

    我正在 openCV 中编写一些代码 想要找到一个非常大的矩阵数组 单通道灰度 浮点数 的中值 我尝试了几种方法 例如对数组进行排序 使用 std sort 和选择中间条目 但与 matlab 中的中值函数相比 它非常慢 准确地说 在 ma
  • 如何在给定目标大小的情况下在 python 中调整图像大小,同时保留纵横比?

    首先 我觉得这是一个愚蠢的问题 对此感到抱歉 目前 我发现计算最佳缩放因子 目标像素数的最佳宽度和高度 同时保留纵横比 的最准确方法是迭代并选择最佳缩放因子 但是必须有更好的方法来做到这一点 一个例子 import cv2 numpy as
  • __device__ __constant__ 常量

    有什么区别吗 在 CUDA 程序中定义设备常量的最佳方法是什么 在 C 主机 设备程序中 如果我想将常量定义在设备常量内存中 我可以这样做 device constant float a 5 constant float a 5 问题 1
  • 提高 pytesseract 从图像中正确识别文本的能力

    我正在尝试使用读取验证码pytesseract模块 大多数时候它都能提供准确的文本 但并非总是如此 这是读取图像 操作图像以及从图像中提取文本的代码 import cv2 import numpy as np import pytesser
  • 使用opencv计算深度视差图

    我无法使用 opencv 从视差图计算深度 我知道两个立体图像中的距离是用以下公式计算的z baseline focal disparity p 但我不知道如何使用地图计算视差 我使用的代码如下 为我提供了两个图像的视差图 import n
  • OpenCV 仅围绕大轮廓绘制矩形?

    第一次发帖 希望我以正确的方式放置代码 我正在尝试检测和计算视频中的车辆 因此 如果您查看下面的代码 我会在阈值处理和膨胀后找到图像的轮廓 然后我使用 drawContours 和矩形在检测到的轮廓周围绘制一个框 我试图在 drawCont
  • cudaMemcpy() 与 cudaMemcpyFromSymbol()

    我试图找出原因cudaMemcpyFromSymbol 存在 似乎 symbol func 可以做的所有事情 nonSymbol cmd 也可以做 symbol func 似乎可以轻松移动数组或索引的一部分 但这也可以使用 nonSymbo
  • 来自连接到远程机器的相机的 Opencv 流

    我正在用 python 开发一个 wx 应用程序 用于流式传输和显示来自两个不同网络摄像头的视频 这工作正常 但现在我需要在不同的场景中执行此操作 其中两个摄像头连接在通过网络连接的 Windows 上运行的单独计算机中 我的应用程序将在机
  • 检查图像中是否有太薄的区域

    我正在尝试验证雕刻机的黑白图像 更多的是剪贴画图像 不是照片 我需要考虑的主要事情之一是区域的大小 或线条的宽度 因为机器无法处理太细的线条 所以我需要找到比给定阈值更细的区域 以此图为例 竖琴的琴弦可能太细而无法雕刻 我正在阅读有关 Ma
  • OpenCV 2.3 与 VS 2008 - 鼠标事件

    强制性 我是新手 有一份涉及编程的工作 并且我一边工作一边自学 不用说 作为一名老师 我经常犯彻底的错误 我现在所处的位置 我创建了 Graph 类 它 令人惊讶的是 制作了图表 但现在我想通过单击鼠标来修改图形 但我似乎无法让鼠标处理程序

随机推荐

  • 功放电路里三极管的工作状态:甲类、乙类和甲乙类怎么区分?

    1 甲类功放管的工作点电流设计在放大区的线性区中点 xff0c 所以静态电流较大 一般在800mA 1 5A之间 xff0c 不同功率的功放管是其最佳工作点电流是不同的 xff0c 其静态发热量较大 xff0c 所需的散热片也要面积较大 x
  • 文件操作原理

    文件描述符 文件描述符在形式上是一个非负整数 实际上 xff0c 它是一个索引值 xff0c 指向内核为每一个进程所维护的该进程打开文件的记录表 当程序打开一个现有文件或者创建一个新文件时 xff0c 内核向进程返回一个文件描述符 在程序设
  • C++头文件和变量的那些事儿

    头文件和变量的那些事儿 头文件变量在内存中函数与其链接性namespace关键字using声明和using编译指令命名空间的特性未命名空间 new关键字使用new运算符初始化new运算符 函数 头文件 最近在github上拔了一个项目 xf
  • Ubuntu18系统下采集点云数据(速腾16线激光雷达)与ZED 2 相机进行外参标定(Matlab的LCC工具箱)

    这篇是最近的实验记录 xff1a 在Ubuntu系统下读取点云数据并在rviz中显示 xff0c 录制自己的rosbag数据包并离线播放 xff0c 将rosbag文件转化为pcd格式导入MATLAB中 xff0c 和双目相机进行外参标定
  • 基于STM32的高精度超声波模块HC-SR04测距

    准备材料 超声波模块 H C S R 04 HC SR04 H C
  • linux系统实现tcp协议通讯

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 一 tcp通讯的链接二 使用步骤1 引入库2 读入数据 注意 提示 xff1a 以下是本篇文章正文内容 xff0c 下面案例可供
  • 无人机拉力测试台-无人机拉力、扭矩、转速测试教学

    无人机动力系统 测试实验实训教学课程 amp nbsp 实验课程3 xff1a 动力系统基础测试参数测试实验 课程内容 xff1a 1 amp nbsp 无人机动力系统基础测试参数解读 2 amp nbsp 无人机动力系统基础参数测试实验
  • 无人机拉力测试台-无人机动力系统匹配试验

    无人机动力系统 测试实验实训教学课程 amp nbsp 实验指引 一 实验开设背景 人社部2020年8月27号在 新职业 无人机装调检修工就业景气现状分析报告 中说明 xff0c 预计未来五年无人机装调检修工需求量约350万人 无人机装调检
  • 无人机动力测试-无人机电机、螺旋桨、电调测试

    无人机动力系统 测试实验实训教学课程 实验课程4 xff1a 动力系统基本参数测量与验证 课程内容 xff1a 1 amp nbsp 动力系统性能参数及性能特性曲线 2 amp nbsp 动力系统性能参数及性能特性曲线测试实验 实验器材 x
  • ubuntu18.04环境搭建

    1 ubuntu安装make xff1a sudo apt install make sudo apt install make guile 2 ubuntu上安装git xff1a 运行Ubuntu的主机 打开终端 xff0c 输入 su
  • 从0到1!Ubuntu上搭建Kubernetes Cluster

    目录 一 环境准备 二 初始化工作 1 设置root用户密码 2 使用xshell连接三台主机 3 设置主机名和修改hosts文件 4 安装依赖软件以及关闭停用不需要使用的软件 5 时间的同步与时区设置 6 关闭swap分区 7 在 kub
  • 傅立叶变换和拉普拉斯变换的区别

    傅立叶变换可以看做拉普拉斯变换的特殊形式 拉氏变换就是将原时域函数乘上一个与o相关的衰减 子 因为傅氏变换要求绝对可积 xff0c 但实际上很多函数不满足 xff0c 乘上衰减因子之后就基本都可以 了 之后做傅氏变换得来 假如这个为0就还是
  • 一篇让你完全弄懂GPIO的8种配置模式

    前言 配置GPIO口是我们软件开发中必须要掌握的 xff0c 每个模式的作用效果也是需要清楚的 如果连gpio应该配置成什么模式都不懂 xff0c 是无法进行后面的开发的 1 输入模式 1 1 浮空输入模式 I O端口的电平信号进入输入数据
  • 上位机与下位机的通讯

    一 概念 上位机 xff1a 是指人可以直接发出操作命令的计算机 xff0c 一般指PC 人机界面等 发出的命令首先给下位机 xff0c 下位机再根据命令解释成相应的时序信号 xff0c 直接控制相应设备 下位机 xff1a 直接控制设备获
  • OptiTrack Motive 使用教程

    相机标定 最近在使用Quanser的地面车做实验 xff0c 需要用到OptiTrack系统进行定位 xff0c 记录一下使用过程 xff0c 供需要的人参考 本文参考了以下博客 xff1a https blog csdn net banz
  • 一种int型、float型转char型以及回转方法

    摘要 xff1a 本文讲述一种可以在STM32F103C8T6上面运行的一种int型 float型转char型以及回转方法 xff0c 一般用于计算好的数据输入到传感器中或物联网器件中 xff1b 把传感器中的数据提取出来计算等等 实验时间
  • Ubuntu18 python多版本管理切换

    一 背景 Ubuntu18 04电脑 xff0c 安装有python2 7和python3 6 9两个python版本 xff0c 目前像安装另一款软件 xff0c 依赖要求是python gt 61 3 7 xff0c 但又不想删除pyt
  • 解决“E: Package ‘libqtgui4‘ has no installation candidate”无法安装qt4

    使用场景 xff1a Ubuntu20 4 xff0c VMware16pro 笔者在安装Ubuntu下的网络调试助手NetAssist xff0c 遇到了 E Package libqtgui4 has no installation c
  • 时序数据插值,对GPS采样数据进行线性插值

    此篇为上一篇的接续 xff0c 对时序数据进行插值 上篇文章 解析kml文件 xff0c 提取经纬度信息存入csv 将kml里面的信息提取了出来 xff0c 但是有些数据间隔太大 xff0c 甚至几十秒才一个采样点 xff0c 需求对这样的
  • Jetson nano/NX安装Opencv Cuda版

    一 卸载系统自带的opencv sudo apt span class token operator span get purge libopencv span class token operator span python span c