当前位置: 首页 > article >正文

【opencv】——为arm平台交叉编译

opencv, arm, aarch64

1. 目标

为arm32,64位系统编译opencv,方便做一些AI模型推理的处理+可视化等功能

2. 交叉编译工具链安装

不同平台的交叉编译工具链都不一样,这里就跳过,按自己平台的说明安装就行

3. 编译

按以下步骤

1.clone 代码
git clone https://github.com/nihui/opencv-mobile.git

2.修改配置
vim options.txt

3.修改cmake的gcc,g++
在CMakeLists.txt的顶部添加以下命令,根据32位/64位系统选择
# 32位系统
set(CMAKE_C_COMPILER arm-linux-uclibcgnueabihf-gcc)
set(CMAKE_CXX_COMPILER arm-linux-uclibcgnueabihf-g++)
# 64位系统
set(CMAKE_C_COMPILER aarch64-microbt-linux-uclibc-gcc)
set(CMAKE_CXX_COMPILER aarch64-microbt-linux-uclibc-g++)

3.编译
编译之后,头文件,库文件都会在install文件夹下

mkdir -p build
cd build
cmake -DCMAKE_INSTALL_PREFIX=install \
  -DCMAKE_BUILD_TYPE=Release \
  `cat ../options.txt` \
  -DBUILD_opencv_world=OFF ..
make -j4
make install

4. 使用

5. 注意

  • 需要确认系统是32/64位的系统再编译。32/64位是不能通用的。

http://www.kler.cn/news/321691.html

相关文章:

  • Apache Iceberg 数据类型参考表
  • URL中 / 作为字符串,而不是路径。
  • 19.1 使用k8s的sdk编写一个项目获取pod和node信息
  • 【毕业论文+源码】如何使用Spring Boot搭建一个简单的篮球论坛系统
  • 企业急于采用人工智能,忽视了安全强化
  • Linux云计算 |【第四阶段】NOSQL-DAY3
  • ubuntu 24搭建docker私有仓库
  • 【图像处理】多幅不同焦距的同一个物体的平面图象,合成一幅具有立体效果的单幅图像原理(二)
  • 通过python脚本采集TCP自定义端口连接数数据推送到Prometheus
  • 【azure-openai】批量翻译demo【python】【gradio】
  • 流浪软件uniaccess agent 删除
  • Webpack、Rollup、Parcel 和 Grunt、Gulp 的区别
  • 【理解 Java 中的 for 循环】
  • 【RabbitMQ 项目】服务端:信道模块
  • Java调用第三方接口、http请求详解,一文学会
  • Sqlserver事务行版本控制指南
  • 面向pymupdf4llm与MinerU 面试题
  • OpenHarmony(鸿蒙南向)——平台驱动指南【HDMI】
  • 倾斜单体化重建异形和异形建筑思路整理
  • 力扣583-两个字符串的删除操作(Java详细题解)
  • Spring Boot的核心技术有哪些?
  • AIGC引领数智未来:企业架构演进的深度解析与实践路径,The Open Group 2024生态系统架构·可持续发展年度大会专题报道
  • 深入理解 CompletableFuture 的底层原理
  • 使用npm link 把一个本地项目变成依赖,引入到另一个项目中
  • xlsx库插件读取excel文件
  • 在使用 Docker 时,用户可能会遇到各种常见的错误和问题
  • 使用python进行自然语言处理的示例
  • jmeter-请求参数加密-MD5加密
  • 美食共享圈:Spring Boot校园周边美食平台
  • uniapp踩坑 tabbar页面数据刷新了但视图没有更新