这里写目录标题

  • 1.Libdmtx库的配置
    • 1.首先就是先去下载一个libdmtx库
    • 2.开始配置
  • 2. OpenCV4.5的安装(C++)
    • 1.安装依赖项和cmake
    • 2.下载OpenCV4.5安装包
      • 1.推荐Github下载:
      • 2.下载完成后,解压到主目录下:
      • 3.cmake配置和编译OpenCV4.5
        • 3.1在主目录打开终端,如下:
        • 3.2然后在该目录下新建一个文件夹为build,然后再进到build文件夹内:
        • 3.3使用cmake配置opencv:
        • 3.4 用make 进行编译,命令为:
        • 3.5 用make 进行安装,命令为:
      • 4.配置OpenCV4.5的环境
        • 4.1 将opencv的库添加到路径,从而可以让系统找到,命令为:
        • 4.2 配置bash,命令为:
      • 5.测试OpenCV4.5是否安装成功
        • 5.1 通过终端进入到测试文件里面,命令为:
        • 5.2 然后依次输入如下命令:
        • 5.3 运行最后的命令,结果:

做agv的同学们可能都知道,DataMatrix(数据矩形码)的识别,目前网上开源的项目就好像只能找到两个,一个是Zxing,另一个就是今天要介绍的libdmtx库,Zxing找了很多资料都显示无法对矩形码进行解码,或许你们可以去尝试一下,而libdmtx这个库是确实是可以对矩形码解码的,接下来就讲讲自己的配置过程,希望可以帮到你们。

1.Libdmtx库的配置

1.首先就是先去下载一个libdmtx库

下载地址(直接点击就可以去到下载页)
下载好以后先解压,然后解压后的界面是这样的:

2.开始配置

先运行autogen.sh,输入如下命令:

1 ./autogen.sh

有些博客上说运行configure这个文件,然而解压后是没有这个文件的,要先运行上面的命令后才会出现那个文件的,解压后有个configure.ac,这个对初学者很容易混淆,记住不是这个文件,接下来运行后如下:


这时候就出现了configure这个文件,然后输入如下命令:

1 ./configure
2  make
3  sudo make install

2. OpenCV4.5的安装(C++)

1.安装依赖项和cmake

1 |sudo apt-get update
2 |sudo apt-get install cmake
3 |sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev

2.下载OpenCV4.5安装包

1.推荐Github下载:
1 |# 安装4.5.0版本
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.0.zip
2 |# 安装最新版本
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
2.下载完成后,解压到主目录下:

然后进入到opencv-4.5.0中

3.cmake配置和编译OpenCV4.5
3.1在主目录打开终端,如下:

3.2然后在该目录下新建一个文件夹为build,然后再进到build文件夹内:
1 | mkdir build
2 | cd build
3.3使用cmake配置opencv:
1 | cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=YES ..

说明:
-D OPENCV_GENERATE_PKGCONFIG=YES OpenCV4以上默认不使用pkg-config,该编译选项开启生成opencv4.pc文件,支持pkg-config功能

3.4 用make 进行编译,命令为:
1 | make -j4

说明:
-j4中的4指同时使用4个进程,可以根据电脑的进程数调整此值

3.5 用make 进行安装,命令为:
1 | sudo make install
4.配置OpenCV4.5的环境
4.1 将opencv的库添加到路径,从而可以让系统找到,命令为:
1 | sudo gedit /etc/ld.so.conf.d/opencv.conf
# 说明:打开的文件是一个空的文件,然后加入/usr/local/lib,保存
2 | /usr/local/lib
#执行下面的命令,使得刚才的配置生效
3 | sudo ldconfig

4.2 配置bash,命令为:
1 | sudo gedit /etc/bash.bashrc
#在打开的文件最后面加入以下命令:
# 见下图PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH #保存,执行下面的命令使得配置生效
2 | source /etc/bash.bashrc
#最后再执行更新命令:
3 | sudo updatedb

5.测试OpenCV4.5是否安装成功
5.1 通过终端进入到测试文件里面,命令为:
1 | cd samples/cpp/example_cmake

5.2 然后依次输入如下命令:
1 | cmake .
2 | make


说明:看到编译完成后,没有错误,说明安装没有问题。

5.3 运行最后的命令,结果:
1 | ./opencv_example


成功安装好了,前面已经安装好了解码库和OpenCV4.5这个工具,后面读者可以自己去调试libdmtx了。下图是我调试的结果

libdmtx库的配置与OpenCV4.5的安装相关推荐

  1. 【Android 安装包优化】动态库打包配置 ( “armeabi-v7a“, “arm64-v8a“, “x86“, “x86_64“ APK 打包 CPU 指令集配置 | NDK 完整配置参考 )

    文章目录 一.动态库打包配置 二.NDK 完整配置参考 三.参考资料 一.动态库打包配置 在 build.gradle 构建脚本中 , 配置 ndk 编译的动态库 CPU 架构类型 ; 在 " ...

  2. 【Android NDK 开发】Visual Studio 2019 使用 CMake 开发 JNI 动态库 ( 动态库编译配置 | JNI 头文件导入 | JNI 方法命名规范 )

    文章目录 I . JNI 与 NDK 区别 II . Visual Studio 编译动态库 III. 配置 导入 jni.h 头文件 IV . IntelliJ IDEA Community Edi ...

  3. linux共享库位置配置(LD_LIBRARY_PATH环境变量 或者 更改/etc/ld.so.conf)

    linux共享库位置配置(LD_LIBRARY_PATH环境变量 或者 更改/etc/ld.so.conf) 转载于:https://www.cnblogs.com/RichardLee/archiv ...

  4. 正式生产库,配置双节点的RAC + 单实例的 DATAGUARD

    正式生产库,配置DATAGUARD RAC+单实例DATAGUARD  配置 RAC 两节点: 192.1.0.101    rac1     192.1.0.102    rac2 存储:ASM D ...

  5. Linux共享库路径配置

    Linux共享库路径配置 Linux下找不到共享库文件的典型现象为明明已经安装某个软包(如libnet,MySQL),编译链接可以正常进行,但是在运行时出现如"error while loa ...

  6. mysql 备库同步_MYSQL主从库同步配置过程

    MYSQL主从库同步配置过程 为了实现网站数据库的异地备份,采用了MySQL数据库主从同步配置,需要两台服务器分别作为主从库,当主库发生增删改等操作,会实时反映到从库,我的个人服务器配置如下: 主库为 ...

  7. 新版本GPU加速的tensorflow库的配置方法

      本文介绍在Anaconda环境中,配置可以用GPU运行的Python新版tensorflow库的方法.   在上一篇文章Anaconda配置Python新版本tensorflow库(CPU.GPU ...

  8. [软件工具][原创]pcl引用库一键配置到VisualStudio中支持vs2015-v2022使用教程

    你还在手动配置pcl吗?那你out了,由于pcl的include,lib太多很容易配置出错,为了解决配置效率低下配置出错问题,我们制作了一个全系列支持pcl配置工具,大家只要安装好pcl并保证有PCL ...

  9. 稀疏表示中KL1p库的配置及Demo

    最近打算在研究中尝试稀疏编码.稀疏表示的理论知识这里不具体补充,有兴趣的可以查看下面这篇用稀疏表示做人脸识别的文章,讲得很清楚. http://blog.csdn.net/xiaoshengforev ...

最新文章

  1. teams怎么去看谁在说话
  2. 中医 西班牙语 PHP,php – MySql西班牙语字符数据
  3. 使用FormData进行Ajax请求上传文件
  4. 常见压缩/解压缩及打包命令
  5. keras 双向LSTM 简单示例
  6. 《网络安全原理与实践》一1.12 复习题
  7. jeecg框架 弹出框问题
  8. 一文带你深入了解Linux IIO 子系统
  9. 【转载】详细设计说明书模板
  10. Windows漏洞修复服务器,Windows Server 2008相关系统漏洞修复
  11. 华为防火墙配置策略路由实现多个ISP出接口的智能选路
  12. rust领地柜用石镐拆吗_腐蚀Rust防炸地基教学 伪分离和双层防炸地基怎么造
  13. 【四】Java设计模式GOF23之抽象工厂模式
  14. JS中什么是DOM和BOM
  15. 高级自动化测试面试题(Web、App、接口)
  16. MySQL数据盘空间满了
  17. 122. 买卖股票的最佳时机 II
  18. 清华工科博士答辩PPT(转载)
  19. python graphx_如何使用Python/pyspark运行graphx?
  20. 在 Windows 下查看开放端口

热门文章

  1. Python 队列(Queue)用法
  2. 小程序 | 微信小程序实现循环嵌套数据选择
  3. tar中的参数 cvf,xvf,cvzf,zxvf的区别
  4. 简单3步, 不懂技术也能做出精美的高保真原型动效
  5. ARTS Share9 Oracle中的Union、Union All、Intersect、Minus
  6. 终于开始CSS了,终于可以不无聊了
  7. 使用手机连接树莓派(无需电脑,只需要一台手机)
  8. vue动态绑定class的最常用几种方式
  9. 蓝桥杯 数字三角形
  10. uniapp实现自定义拍照窗口