【香橙派】Orange pi AIpro开发板使用之普通照片转换为卡通

前言

        最近有幸收到一份新款 OrangePi AIpro 开发板,之前手里也捣鼓过一些板子,这次尝试从零开始部署一个简单的后端服务。OrangePi AIpro 采用昇腾AI技术路线,具体为4核64位处理器+AI处理器,可配16GB内存容量,各种复杂应用都能流畅运行,板载1000Mbps以太网,传输更快更稳定,配置了各种丰富的接口,应用场景广泛。

开发板简介

  1. OrangePi AIpro 开发板配备4核64位处理器+ AI处理器, 8GB/16GB的LPDDR4X内存,足以满足大部分的AI推理应用场景和其他大内存的产品应用场景,速度更快,功耗更低。
  2. 支持双HDMI视频输出,支持双4K高清输出,支持一个MIPI DSI屏输出,支持两个MIPI接口摄像头输入,足够满足在有视频源输入场景的需求。
  3. 板载支持1000Mbps以太网,拥有wifi 2.5G/5G和有线两种接入方式,网络连接更大、更稳定,传输更高速。
  4. 板载M.2接口,支持接入SATA/NVMe SSD 2280硬盘,增加海量数据存储空间,满足快速读写和大容量存储的需求。
  5. 汇聚了MIPI DSI、MIPI CSI、USB 3.0、Type-C 3.0、HDMI 2.0、千兆以太网、支持SATA/NVMe SSD 2280的M.2插槽等各类流行的接口,可应用于外部设备控制和扩展。

配图:

硬件规格参数
OrangePi AIpro 开发板和斐讯N1盒子(历史遗留产物)的大小对比
开发板详细图

开发版资料

        在体验的过程中, OrangePi AIpro 开发板的资料是非常全面,这也是我完全没有想到的,这也让我在后面的配置中少走了很多弯路。不过这里也稍微提一点建议,可以将资料分发在不同的平台进行下载,毕竟“云盘限速”很烦人。

        开发版资料:访问链接

官方资料截图

系统安装

1、前期准备

必需品

        Orange Ai Pro开发版一块、TF卡(建议32GB或以上)、TF读卡器、一台电脑、有线网络或WIFI

非必需品

        HDMI显示器连接线、串口线、显示器、外接鼠标、外接键盘等

电脑所需安装软件

        balenaEtcher(烧录镜像软件)、MobaXterm(或其他远程软件,如xShell等)

镜像准备

        下载官方镜像中的 ubuntu 镜像 

2、烧录镜像

        将准备的TF卡插入TF读卡器,并插入准备好的电脑中,确认TF卡中的数据已经备份(数据无价);

        在电脑打开 balenaEtcher 软件,将准备的镜像烧录到TF卡中,如图1-2-1。建议使用 Portable 版本不需要安装,打开即可使用。烧录过程中出现了如图1-2-2报错,我是通过 7zip 解压后重新烧录,可以成功。

图1-2-1

        

图1-2-2

3、配置TF卡启动

        确认 OrangePi AIpro 开发板启动设置是否配置为从 TF 卡启动,如果不是,得按照文档拨动开关到从 TF 卡启动的配置下(拨动开关都拨到右边)。拨动开关位置如图1-3-1,拨动开关对应说明如图1-3-2。注意:切换拨码开关后,必须插拔电源重新上下电才能生效。开发板的复位按键是不会使新的拨动开关配置生效。

图1-3-1
图1-3-2

4、上电启动

        将TF卡插到 OrangePi AIpro 开发板上,如图1-4-1,有条件可接入 HDMI 显示器,重新下上电。等待1分钟左右,屏幕上显示系统登录页面,如图1-4-2。登录的账号为HwHiAiUser,密码为Mind@123。

图1-4-1
图1-4-2

5、远程连接

        在 OrangePi AIpro 开发板上输入 ifconfig 获取当前设备ip或者在路由器上获取  OrangePi AIpro 开发板的ip地址。
        打开 MobaXterm 或其他ssh工具(如xShell等),在工具中输入ip地址、端口号、用户名,点击连接,端口号默认22,如图1-5-1。输入密码后即可连接上,注意输入密码时不会显示,直接输入后回车即可。

图1-5-1

6、更新配置

        在命令行中执行以下命令切换root账号

sudo -i

        在命令行执行以下命令创建对应文件夹备用

mkdir -p /data/download

        在命令行执行以下命令更新 apt 包,确保后续能下载更新包

apt update

运行测试

1、拉取仓库

        进入下载文件夹/data/download

cd /data/download

        输入以下命令拉取示例仓库,拉取后见图2-1-1,如果没有git环境,需先安装git,具体操作自行百度,仓库地址:链接

git clone https://gitee.com/ascend/samples.git
图2-1-1

2、模型下载

        进入拉取示例中的模型文件夹,如图2-2-1,使用 wget 命令拉取 CartoonGAN 模型,如图2-2-2、图2-2-3。

cd samples/python/contrib/cartoonGAN_picture/model 
图2-2-1
图2-2-2
图2-2-3

3、执行模型转换

        执行模型转换命令,将原始模型转换为 om模型,如图2-3-1。也可以直接下载 om模型进行使用,具体下载可参考 链接

atc --output_type=FP32 --input_shape="train_real_A:1,256,256,3" --input_format=NHWC --output="./cartoonization" --soc_version=Ascend310 --insert_op_conf=insert_op.cfg --framework=3 --save_original_model=false --model="./cartoonization.pb" --precision_mode=allow_fp32_to_fp16
图2-3-1

4、执行生成

        进入源图片存放路径,下载测试图片用来测试。此处直接使用demo中的图片,实际使用时可换成需要处理的图片。进入路径如图2-4-1,下载图片如图2-4-2.

cd /data/download/samples/python/contrib/cartoonGAN_picture/src
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/cartoonGAN_picture/scenery.jpg
图2-4-1
图2-4-2

         执行 Python 转换命令,将来源图片转换成卡通图片。进入 out 路径将转换后的图片与原图进行对比,对比图如图2-4-3。

python3 cartoonization.py ../data/
图2-4-3

使用测评

        这款 OrangePi AIpro 开发板除了能能部署 AI 项目,有强大 AI 处理器的性能支撑,如:Ollama、RAGFlow、官方示例等,也能满足普通应用程序的需求,如:自开发项目、Home Assistant、Halo等。它拥有的丰富的硬件接口、便捷的开发环境和完整的文档支撑,能应对不同的使用场景。

        资源消耗和运行时间如图3-1-1、图3-1-2:

图3-1-1
图3-1-2

结论

        OrangePi AIpro 开发板满足了我日常开发和生活使用,性价比高,完善的文档支撑和丰富的样例,会让使用者少走很多弯路。建议的话,还是希望文档等资料能够提供不同途径的下载方式,如阿里云盘、夸克云盘等;还有在扇热风扇的声音上还能够减少一点。后续这块板子我也将用来发布 Home Assistant ,将智能家居设备联动起来,期待它能有更好的表现。

        最后期待国产AI开发板能够越做越好,在未来的项目中能够发挥越来越重要的作用。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Facebook Dating:社交平台的约会新体验

随着社交媒体的普及和技术的发展,传统的社交方式正在经历革新,尤其是在约会这个领域。Facebook作为全球领先的社交平台,推出了Facebook Dating,旨在为用户提供一个全新的约会体验。本文将探讨Facebook Dating如何重新定义社交平台…

c语言题目之打印单身狗

文章目录 一、题目二、思路三、代码实现 提示:以下是本篇文章正文内容,下面案例可供参考 一、题目 二、思路 第一步 首先这里先了解两个有关于位操作符异或的知识点 ,异或操作符的规则是相同为0,相异为1 。 通过上面我们可以得…

双非一本嵌入式方向怎么学?

双非一本(非“985”和“211”工程重点建设的本科院校)的学生在学习嵌入式方向时,可以通过以下步骤和策略来系统地学习和提升自己。我收集归类了一份嵌入式学习包,对于新手而言简直不要太棒,里面包括了新手各个时期的学…

哈喽GPT-4o,程序员如何通过GPT-4o保护自己的合法权益

目录 一、法律研究Prompt:派遣合同和劳务外包合同有什么区别?详细说一下在被裁员时的区别? 二、法律条文检索Prompt:检索《劳动合同法》,以下情况属于第几条,如果公司进行技能考试,并以技能考试…

嵌入式物联网在医疗行业中的应用——案例分析

作者主页: 知孤云出岫 目录 嵌入式物联网在医疗行业中的应用——案例分析引言1. 智能病房监控1.1 实时患者监控系统 2. 智能医疗设备管理2.1 设备使用跟踪与维护 3. 智能药物管理3.1 药物分配与跟踪 4. 智能远程医疗4.1 远程患者监控与诊断 总结 嵌入式物联网在医疗行业中的应…

Rust Result 与可恢复的错误

Result 与可恢复的错误 大部分错误并没有严重到需要程序完全停止执行。有时,一个函数会因为一个容易理解并做出反应的原因失败。例如,如果因为打开一个并不存在的文件而失败,此时我们可能想要创建这个文件,而不是终止进程。 回忆…

3112. 访问消失节点的最少时间 Medium

给你一个二维数组 edges 表示一个 n 个点的无向图,其中 edges[i] [ui, vi, lengthi] 表示节点 ui 和节点 vi 之间有一条需要 lengthi 单位时间通过的无向边。 同时给你一个数组 disappear ,其中 disappear[i] 表示节点 i 从图中消失的时间点&#xff0…

华清数据结构day3 24-7-18

基于昨天代码增加增删改查功能 zy.h #ifndef ZY_H #define ZY_H #define MAX 100 //最大容量 //定义学生类型 struct Stu {char name[20];int age;double score; }; //定义班级类型 struct Class {struct Stu student[MAX]; //存放学生的容器int size; //实际…

CH552的bootload程序IAP直接对ROM-flash修改数据(未尝试)

手动写bootload程序的可能 1,根据ch552g的使用手册内容查看到 2,在下面的参考文件的IAP文件夹中看到IAP文件 参考 下面程序中并没有跳转到厂家bootload的过程,这是直接通过控制有关的寄存器对FLSH进行直接写入和修改,这样可以认…

格式工厂,将所有的ts文件,合并为mp4

1、下载格式工厂 格式工厂 官方主页 - 免费多功能的多媒体文件转换工具 2、打开软件:视频合并&混流项 3、添加ts文件 4、点击【确定】,回到首页 5、首页中,点击【开始】开始转: 6、完成以后,会播放音乐并且右下…

Mysql中的几种常见日志

引言 本文是对Mysql中几种常见日志及其作用的介绍 一、error log(错误日志) MySQL 中的 error log(错误日志)是一种非常重要的日志类型,它记录了 MySQL 服务器在启动、运行及关闭过程中遇到的所有重要事件、错误信…

从零开始读RocketMq源码(五)Message的消费流程解析

目录 前言 准备 拉取服务和重平衡服务启动 初识PullRequest 重平衡服务 对重平衡资源进行排序 MessageQueue消息队列集合来源 Consumer消费者集合数据来源 确定分配资源策略 执行分配策略 初始化ProcessQueue 初始化PullRequest 内存队列填充PullRequest 消息拉取…

【学习笔记】无人机系统(UAS)的连接、识别和跟踪(二)-定义和缩写

引言 3GPP TS 23.256 技术规范,主要定义了3GPP系统对无人机(UAV)的连接性、身份识别、跟踪及A2X(Aircraft-to-Everything)服务的支持。 3GPP TS 23.256 技术规范: 【免费】3GPPTS23.256技术报告-无人机系…

从操作系统层面认识Linux

描述进程-PCB Linux操作系统下的PCB是: task_struct https://www.cnblogs.com/tongyan2/p/5544887.htmlhttps://www.cnblogs.com/tongyan2/p/5544887.html校招必背操作系统面试题-什么是 PCB(进程控制块) ?_哔哩哔哩_bilibili校招必背操作系…

notes for datawhale summer camp NPL task3

了解 Transformer 模型,并基于 Transformer 模型实现在机器翻译任务上的应用! Transformer 介绍 基于循环或卷积神经网络的序列到序列建模方法是现存机器翻译任务中的经典方法。然而,它们在建模文本长程依赖方面都存在一定的局限性。 为了…

Mac 安装MySQL 配置环境变量 修改密码

文章目录 1 下载与安装2 配置环境变量3 数据库常用命令3.1 Mac使用设置管理mysql服务启停 4 数据库修改root密码4.1 知道当前密码4.2 忘记当前密码4.3 问题 参考 1 下载与安装 官网:https://www.mysql.com/ 找到开源下载方式 下载社区版 2 配置环境变量 对于Mac…

【Spring全家桶系列之核心篇 | Spring Cloud】 - 第七章 掌握Gateway核心技术,实现高效路由与转发

目录 前言示例创建一个服务提供者创建网关 创建common子项目 前言 Spring Cloud Gateway 是一个基于 Spring Boot 的非阻塞 API 网关服务,它提供了动态路由、请求断言、过滤器等功能。 以下是关于 Spring Cloud Gateway 的示例: 示例 创建一个服务提…

深度挖掘行情接口:股票市场中的关键金融数据API接口解析

在股票市场里,存在若干常见的股票行情数据接口,每一种接口皆具备独特的功能与用途。以下为一些常见的金融数据 API 接口,其涵盖了广泛的金融数据内容,其中就包含股票行情数据: 实时行情接口 实时行情接口&#xff1a…

使用小波分析实现文字种类自动识别

文章目录 数据简介开始实验小波分解得出结果结果分析误差分析 数据简介 各找一篇中文,日文,韩文,英文,俄文较长的学术论文。将论文转化为JPG格式。拆分每张JPG生成更多小的JPG。最终获得很多5个不同语言的JPG并且自带标签。数据链…

Python基础语法篇(下)+ 数据可视化

Python基础语法(下) 数据可视化 一、函数(一)函数的定义(二)函数的调用和传参 二、文件操作(一)文件读取和写入(二)文件对象及方法(三&#xff09…