【详解】RV1106移植opencv-mobile库


文章目录

  • 前言
  • 一、烧入镜像
  • 二、编译项目
    • 1.创建项目文件
  • 三、移植
  • 四、运行文件
  • 五、总结


前言

硬件:瑞芯微Rv1106【Luckfox Pro\Max Pico、网线一根、USB线、串口助手、摄像头
软件:ubuntu 20.4
编译器:arm-rockchip830-linux-uclibcgnueabihf
opencv包:本文主要是使用nihui
开发板使用镜像:buildroot
在这里插入图片描述

一、烧入镜像

具体烧入方法

1.打开SocToolKit.exe工具、并且选择RV1106芯片

2.首先先按着板子的boot按键

3.再用usb连接好电脑和开发板【遇到过不能传输的情况,检查usb线是不是只有充电,而不能传输数据】

4.等软件识别到板子之后,把对应的镜像文件烧入

二、编译项目

1.创建项目文件

在这里插入图片描述
在这里插入图片描述
代码如下

set(CMAKE_C_COMPILER "/home/wj/toolchain/Linux/RV1106/arm-rockchip830-linux-uclibcgnueabihf/bin/arm-rockchip830-linux-uclibcgnueabihf-gcc")
set(CMAKE_CXX_COMPILER "/home/wj/toolchain/Linux/RV1106/arm-rockchip830-linux-uclibcgnueabihf/bin/arm-rockchip830-linux-uclibcgnueabihf-g++")project(opencv-mobile-test)
cmake_minimum_required(VERSION 3.5)
set(CMAKE_CXX_STANDARD 11)set(OpenCV_DIR "${CMAKE_CURRENT_SOURCE_DIR}/opencv-mobile-4.8.1-luckfox-pico/lib/cmake/opencv4")
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})add_executable(opencv-mobile-test main.cpp)target_link_libraries(opencv-mobile-test ${OpenCV_LIBS})

在这里插入图片描述

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>#include <unistd.h>   // sleep()int main()
{cv::VideoCapture cap;cap.set(cv::CAP_PROP_FRAME_WIDTH, 320);cap.set(cv::CAP_PROP_FRAME_HEIGHT, 240);cap.open(0);const int w = cap.get(cv::CAP_PROP_FRAME_WIDTH);const int h = cap.get(cv::CAP_PROP_FRAME_HEIGHT);fprintf(stderr, "%d x %d\n", w, h);cv::Mat bgr[9];for (int i = 0; i < 9; i++){cap >> bgr[i];sleep(1);}cap.release();// combine into big image{cv::Mat out(h * 3, w * 3, CV_8UC3);bgr[0].copyTo(out(cv::Rect(0, 0, w, h)));bgr[1].copyTo(out(cv::Rect(w, 0, w, h)));bgr[2].copyTo(out(cv::Rect(w * 2, 0, w, h)));bgr[3].copyTo(out(cv::Rect(0, h, w, h)));bgr[4].copyTo(out(cv::Rect(w, h, w, h)));bgr[5].copyTo(out(cv::Rect(w * 2, h, w, h)));bgr[6].copyTo(out(cv::Rect(0, h * 2, w, h)));bgr[7].copyTo(out(cv::Rect(w, h * 2, w, h)));bgr[8].copyTo(out(cv::Rect(w * 2, h * 2, w, h)));cv::imwrite("out.jpg", out);}return 0;
}

在这里插入图片描述
编译完成之后会出现一个可执行文件:
在这里插入图片描述

三、移植

将网线连接开发板,并且确保开发板和本地电脑ubuntu处于同一网段内,我的
在这里插入图片描述
在电脑ubantu上使用scp传输编译处理的可执行文件opencv-mobile-test

sudo scp -r opencv-mobile-test/ root@192.168.104.114:/root/

可能会遇到的报错:Permission denied (publickey).lost connection
解决办法:sudo vi /etc/ssh/sshd_config
在这里插入图片描述
传输成功之后,板子上首先进入root权限 su root,输入账号root,密码root。
进入到root/目录,然后将摄像头插在板子上【注意连接处不要插反】。

四、运行文件

1.开发板连接摄像头后上电,启动后释放摄像头资源:

killall rkipc

在这里插入图片描述

2.运行程序

./opencv-mobile-test

在这里插入图片描述
可能遇到的问题:【镜像如果不是我上面的,应该有问题,我测试了aplinelinx和ubuntu镜像,结果都是输出以下结果,使用chmod +x ./opencv-mobile-test,也不能正常加载,可能测试的时候有其他问题】
在这里插入图片描述
解决方法:换成我推荐的镜像文件

3.输出结果
在这里插入图片描述
为了很好的可视化输出结果,将out.jpg发送到本地ubuntu上,使用命令:【注意替换自己IP和地址】
scp out.jpg wj@192.168.104.118:/home/wj/Desktop
在这里插入图片描述

五、总结

先完成opencv的移植,后续使用rknpu去实时推理摄像头图像

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/38869.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能——常用数学基础之线代中的矩阵

1. 矩阵的本质&#xff1a; 矩阵本质上是一种数学结构&#xff0c;它由按照特定规则排列的数字组成&#xff0c;通常被表示为一个二维数组。矩阵可以用于描述一组数据&#xff0c;或者表示某种关系&#xff0c;比如线性变换。 在人工智能中&#xff0c;矩阵常被用来表示数据集…

【单片机与嵌入式】stm32串口通信入门

一、串口通信/协议 &#xff08;一&#xff09;串口通信简介 串口通信是一种通过串行传输方式在电子设备之间进行数据交换的通信方式。它通常涉及两条线&#xff08;一条用于发送数据&#xff0c;一条用于接收数据&#xff09;&#xff0c;适用于各种设备&#xff0c;从微控制…

入选顶会ICML,清华AIR等联合发布蛋白质语言模型ESM-AA,超越传统SOTA

作为细胞内无数生化反应的驱动力&#xff0c;蛋白质在细胞微观世界中扮演着建筑师和工程师的角色&#xff0c;不仅催化着生命活动&#xff0c;更是构筑、维系生物体形态与功能的基础构件。正是蛋白质之间的互动、协同作用&#xff0c;支撑起了生命的宏伟蓝图。 然而&#xff0…

Ubuntu DNS服务配置 深度解析

测试方法 resolvectl status dig alidns.com 修改实践 直接用接口配置&#xff0c;没用 /etc/resolv.conf&#xff0c;有效 /etc/netplan/01-network-manager-all.yaml,无效 /etc/systemd/resolved.conf&#xff0c;见link&#xff0c;为全局配置 [Resolve] DNS1.1.1.1 Fa…

Adobe Premiere 视频编辑软件下载安装,pr全系列分享 轻松编辑视频

Adobe Premiere&#xff0c;自其诞生之日起&#xff0c;便以其卓越的性能和出色的表现&#xff0c;稳坐视频编辑领域的王者宝座&#xff0c;赢得了无数专业编辑人员与广大爱好者的青睐。这款强大的视频编辑软件&#xff0c;凭借其丰富的功能和灵活的操作性&#xff0c;为用户提…

2024年道路运输安全员(企业管理人员)备考题库资料。

46.危险货物道路运输随车携带的单据&#xff0c;下列选项不属于的是&#xff08;&#xff09;。 A.道路运输危险货物安全卡 B.运单或者电子运单 C.道路危险货物运输从业资格证 D.车辆检测报告 答案&#xff1a;D 47.危险货物运输驾驶人员在24小时内实际驾驶车辆时间累计不…

ROS2在rviz2中实时显示轨迹和点

本文是将《ROS在rviz中实时显示轨迹和点》博客中rviz轨迹显示转为ROS2环境中的rviz2显示。 ros2的工作空间创建这里就不展示了。 包的创建 ros2 pkg create --build-type ament_cmake showpath --dependencies rclcpp nav_msgs geometry_msgs tf2_geometry_msgsshowpath.cpp…

【漏洞复现】和丰多媒体信息发布系统 QH.aspx 任意文件上传漏洞

0x01 产品简介 和丰多媒体信息发布系统也称数字标牌&#xff08;Digital Signage&#xff09;&#xff0c;是指通过大屏幕终端显示设备&#xff0c;发布商业、财经和娱乐信息的多媒体专业视听系统&#xff0c;常被称为除纸张媒体、电台、电视、互联网之外的“第五媒体”。该系…

1-4.时间序列数据建模流程范例

文章最前&#xff1a; 我是Octopus&#xff0c;这个名字来源于我的中文名–章鱼&#xff1b;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github &#xff1b;这博客是记录我学习的点点滴滴&#xff0c;如果您对 Python、Java、AI、算法有兴趣&#xff0c;可以关注我的…

信息学奥赛初赛天天练-41-CSP-J2021基础题-n个数取最大、树的边数、递归、递推、深度优先搜索应用

PDF文档公众号回复关键字:20240701 2021 CSP-J 选择题 单项选择题&#xff08;共15题&#xff0c;每题2分&#xff0c;共计30分&#xff1a;每题有且仅有一个正确选项&#xff09; 4.以比较作为基本运算&#xff0c;在N个数中找出最大数&#xff0c;最坏情况下所需要的最少比…

我在中东做MCN,月赚10万美金

图片&#xff5c;Photo by Ben Koorengevel on Unsplash ©自象限原创 作者丨程心 在迪拜购物中心和世界最高建筑哈利法塔旁的主街上&#xff0c;徐晋已经“蹲”了三个小时&#xff0c;每当遇到穿着时髦的年轻男女&#xff0c;他都会上前询问&#xff0c;有没有意愿成为…

C语言部分复习笔记

1. 指针和数组 数组指针 和 指针数组 int* p1[10]; // 指针数组int (*p2)[10]; // 数组指针 因为 [] 的优先级比 * 高&#xff0c;p先和 [] 结合说明p是一个数组&#xff0c;p先和*结合说明p是一个指针 括号保证p先和*结合&#xff0c;说明p是一个指针变量&#xff0c;然后指…

Web2Code :网页理解和代码生成能力的评估框架

多模态大型语言模型&#xff08;MLLMs&#xff09;在过去几年中取得了爆炸性的增长。利用大型语言模型&#xff08;LLMs&#xff09;中丰富的常识知识&#xff0c;MLLMs在处理和推理各种模态&#xff08;如图像、视频和音频&#xff09;方面表现出色&#xff0c;涵盖了识别、推…

VuePress介绍

从本文开始&#xff0c;动手搭建自己的博客&#xff01;希望读者能跟着一起动手&#xff0c;这样才能真正掌握。 ‍ VuePress 是什么 VuePress 是由 Vue 作者带领团队开发的&#xff0c;非常火&#xff0c;使用的人很多&#xff1b;Vue 框架官网也是用了 VuePress 搭建的。即…

4PCS点云配准算法实现

4PCS点云配准算法的C实现如下&#xff1a; #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> #include <pcl/common/common.h> #include <pcl/common/distances.h> #include <pcl/common/transforms.h> #in…

php 通过vendor文件 生成还原最新的composer.json

起因&#xff1a;因为历史原因&#xff0c;在本项目中composer.json基本算废了&#xff0c;没法直接使用composer管理扩展&#xff0c;今天尝试修复一下composer.json。 历史文件&#xff0c;可以看出来已经很久没有维护了&#xff0c;我们主要是恢复require的信息 {"na…

基于CNN的股票预测方法【卷积神经网络】

基于机器学习方法的股票预测系列文章目录 一、基于强化学习DQN的股票预测【股票交易】 二、基于CNN的股票预测方法【卷积神经网络】 文章目录 基于机器学习方法的股票预测系列文章目录一、CNN建模原理二、模型搭建三、模型参数的选择&#xff08;1&#xff09;探究window_size…

下代iPhone或回归可拆卸电池,苹果这操作把我看傻了

刚度过一个愉快的周末&#xff0c;苹果又双叒叕摊上事儿了。 iPhone13 系列被曝扎堆电池鼓包了。 早在去年&#xff0c;就有 iPhone13 和 iPhone14 用户反馈过类似的问题&#xff0c;表示在手机仅仅使用了一年多的时间就出现了电池鼓包的情况&#xff0c;而且还把屏幕给撑起来了…

舞会无领导:一种树形动态规划的视角

没有上司的舞会 Ural 大学有 &#x1d441; 名职员&#xff0c;编号为1∼&#x1d441;。 他们的关系就像一棵以校长为根的树&#xff0c;父节点就是子节点的直接上司。 每个职员有一个快乐指数&#xff0c;用整数 &#x1d43b;&#x1d456; 给出&#xff0c;其中1≤&…

校园卡手机卡怎么注销?

校园手机卡的注销流程可以根据不同的运营商和具体情况有所不同&#xff0c;但一般来说&#xff0c;以下是注销校园手机卡的几种常见方式&#xff0c;我将以分点的方式详细解释&#xff1a; 一、线上注销&#xff08;通过手机APP或官方网站&#xff09; 下载并打开对应运营商的…