使用香橙派 AI pro 开发板生成卡通版的东契奇

引言

AI应用如火如荼,而嵌入式设备与AI的结合也是不可或缺的重要场景。香橙派 AI pro 开发板正是面向嵌入式AI场景而生。

这篇文章记录了对香橙派 AI pro开发板的试用体验。介绍了开发板的基础操作,以及对其中一个AI应用样例的体验,初步感受下 AI 开发板的特别魅力。

  • 开发板基础操作部分,我是远程SSH登录后开启Jupyter,之后通过浏览器访问开发板IP即可操作,跳过了繁琐了远程桌面工具。

  • AI应用样例体验部分,记录了卡通图像生成样例,用东契奇的照片尝试生成了一张卡通图片。

img

嵌入式 AI 场景思考

相较于通用AI,嵌入式AI的优势在设备体积更小,虽然处理能力弱一些,但胜在小巧灵活,在低功耗、边缘场景是不可或缺的。

嵌入式设备在人工智能推理方面有广泛的应用场景。以下是一些常见的嵌入式设备AI推理应用场景:

1.视觉识别和物体检测:
嵌入式设备可以用于实时的视觉识别和物体检测任务。例如,智能摄像头可以使用嵌入式AI模型来实现人脸识别、行人检测、车辆识别等功能。这些应用可以用于安防监控、智能交通系统等领域。

2.语音识别和语音控制:
嵌入式设备可以使用AI模型进行语音识别和语音控制。例如,智能音箱、智能手机等设备可以通过嵌入式AI模型实现语音助手功能,如语音指令识别、语音搜索、语音翻译等。

3.自动驾驶和智能交通:
嵌入式设备在自动驾驶和智能交通领域也有重要应用。例如,嵌入式AI模型可以用于实时的车辆检测、行人检测、交通标志识别等任务,以支持自动驾驶系统的决策和控制。

4.智能家居和物联网:
嵌入式设备可以用于智能家居和物联网应用中的智能感知和控制。例如,智能家电、智能灯具等设备可以使用嵌入式AI模型来实现人体检测、姿态识别、环境感知等功能,以提供更智能化的用户体验。

5.医疗诊断和健康监测:
嵌入式设备可以应用于医疗领域,用于医疗诊断和健康监测。例如,便携式医疗设备可以使用嵌入式AI模型进行疾病诊断、心电图分析、血压监测等任务,以提供更便捷和准确的医疗服务。

这些只是一些嵌入式设备AI推理的应用场景示例,实际上,嵌入式设备的AI推理可以应用于各种领域,如工业自动化、农业智能化、智能机器人等。随着技术的不断发展,嵌入式设备AI推理的应用场景将会越来越广泛。

香橙派 AI Pro 的 AI 初体验

img

Orange Pi AI Pro 开发板是香橙派联合华为精心打造的高性能 AI 开发板, 其搭载了昇腾 AI 处理器, 可提供 8TOPS INT8 的计算能力, 内存提供了 8GB 和 16GB两种版本。 可以实现图像、 视频等多种数据分析与推理计算, 可广泛用于教育、 机器人、 无人机等场景。

登录 Jupyter Lab 界面后,可以看到有9个典型的AI应用样例。

  • 目标检测
  • 文字识别
  • 目标分类
  • 图像曝光增强
  • 卡通图像生成
  • 蛋白质分类评估
  • 细胞图像分割
  • 人像分割与背景替换
  • 语音识别

这些样例涵盖了图片识别、语音识别、图片生成几个大类,也覆盖了高大上的医疗场景。

另外社区中也有不少网友贡献了一些其他应用,有兴趣的可以去搜来体验下。

我发几个让我比较有印象的。

香橙派OrangePi在智能交通上的应用,实现了车牌识别等典型的智能交通应用。

img

香橙派AIpro初体验,详解如何安装Home Assistant Supervised

img

开发板基础操作

开机

原以为都是type C 接口,但使用手机的电源带不起来,怀疑是电压不同。

关机

关机除了 poweroff 命令之外,有个关机键,可以直接关机。这点还是挺方便的,有时候不方便通过命令行输入,直接按键就行,避免了拔电暴力关机。

串口配置 WiFi

家里没有单独的显示器,我的办公桌离路由器也有点远。因此先通过串口给开发板配置WiFi,让开发板使用无线WiFi,首次配置之后使用远程SSH连接开发板操作,就可以连串口线也免去了,避免有线连接。

整个开发板就只需一个电源连接,干干净净。

orangepiaipro login: root

Password: 
  ___                                    ____   _ 
 / _ \  _ __  __ _  _ __    __ _   ___  |  _ \ (_)
| | | || '__|/ _` || '_ \  / _` | / _ \ | |_) || |
| |_| || |  | (_| || | | || (_| ||  __/ |  __/ | |
 \___/ |_|   \__,_||_| |_| \__, | \___| |_|    |_|
                           |___/                  
Welcome to Orange Pi Ai Pro
This system is based on Ubuntu 22.04.3 LTS (GNU/Linux 5.10.0+ aarch64)

This system is only applicable to individual developers and cannot be used for commercial purposes.

By using this system, you have agreed to the Huawei Software License Agreement.
Please refer to the agreement for details on https://www.hiascend.com/software/protocol

Last login: Tue Feb 27 12:11:30 CST 2024
(base) root@orangepiaipro:~# 
(base) root@orangepiaipro:~# 
(base) root@orangepiaipro:~# sudo nmcli dev wifi connect 脱敏 password 脱敏
Device 'wlan0' successfully activated with '5a2a6ed7-acd5-4974-a11e-eed8e1495082'.

root@orangepiaipro:~# ping baidu.com
PING baidu.com (39.156.66.10) 56(84) bytes of data.
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=1 ttl=50 time=49.7 ms
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=2 ttl=50 time=44.5 ms
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=3 ttl=50 time=44.7 ms
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=4 ttl=50 time=45.1 ms
^C
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 44.543/45.983/49.663/2.132 ms

配置了 WiFi 之后,做了下ping测试,确认网络通信正常。

远程SSH登录

开发板通过 WiFi 连接之后,便可以在局域网中直接 SSH 访问开发板了。通过路由器管理页面查询到开发板的局域网IP,直接ssh登录。

% ssh root@192.168.31.19
root@192.168.31.19's password: 
  ___                                    ____   _ 
 / _ \  _ __  __ _  _ __    __ _   ___  |  _ \ (_)
| | | || '__|/ _` || '_ \  / _` | / _ \ | |_) || |
| |_| || |  | (_| || | | || (_| ||  __/ |  __/ | |
 \___/ |_|   \__,_||_| |_| \__, | \___| |_|    |_|
                           |___/                  
Welcome to Orange Pi Ai Pro
This system is based on Ubuntu 22.04.3 LTS (GNU/Linux 5.10.0+ aarch64)

This system is only applicable to individual developers and cannot be used for commercial purposes.

By using this system, you have agreed to the Huawei Software License Agreement.
Please refer to the agreement for details on https://www.hiascend.com/software/protocol

Last login: Tue Feb 27 12:18:45 2024
(base) root@orangepiaipro:~# 

开发板AI样例基础操作

香橙派 AI pro 开发板在镜像中预装了 Jupyter Lab 软件。Jupyter Lab 软件是一个基于 web 的交互式开发环境,集成了代码编辑器、终端、文件管理器等功能,使得开发者可以在一个界面中完成各种任务。并且镜像中也预置了一些可以在 Jupyter Lab 软件中运行的 AI 应用样例。

不得不说这样非常贴心,极大降低了 AI 开发的门槛。

远程操作 Jupyter Lab

手册中 AI 应用样例都是通过 Jupyter Lab 来体验,因此这是必要的。

原本以为需要通过远程桌面工具来访问开发板,后来发现 Jupyter Lab 实际是在开发板本地起了一个 http server,因此局域网可以远程访问了,只需要提前 SSH 登录后启动 Jupyter Lab 即可,无需安装远程桌面工具。

遇到的一个问题 jupyter: command not found
HwHiAiUser@orangepiaipro:~$ cd samples/notebooks/
HwHiAiUser@orangepiaipro:~/samples/notebooks$ ls
01-yolov5              06-human_protein_map_classification
02-ocr                 07-Unet++
03-resnet              08-portrait_pictures
04-image-HDR-enhance   09-speech-recognition
05-cartoonGAN_picture  start_notebook.sh
HwHiAiUser@orangepiaipro:~/samples/notebooks$ ./start_notebook.sh 
./start_notebook.sh: line 7: jupyter: command not found

初步怀疑是因为先以root用户登录,后续切换用户后未能启动python虚拟环境。后续直接以 HwHiAiUser 登录后未再复现该问题。

浏览器直接访问开发板

默认 start_notebook.sh 脚本执行启用了本地 127.0.0.1,因此无法远程访问开发板上的 jupyter lab 开启的 http server。

看了下脚本内容,只需携带监听地址即可。

. /usr/local/Ascend/ascend-toolkit/set_env.sh
export PYTHONPATH=/usr/local/Ascend/thirdpart/aarch64/acllite:$PYTHONPATH

if [ $# -eq 1 ];then
    jupyter lab --ip $1 --allow-root --no-browser
else
    jupyter lab --ip 127.0.0.1 --allow-root --no-browser
fi
(base) HwHiAiUser@orangepiaipro:~/samples/notebooks$ ./start_notebook.sh 0.0.0.0
[W 2024-05-27 23:07:45.145 ServerApp] A `_jupyter_server_extension_points` function was not found in notebook_shim. Instead, a `_jupyter_server_extension_paths` function was found and will be used for now. This function name will be deprecated in future releases of Jupyter Server.
[I 2024-05-27 23:07:45.146 ServerApp] jupyter_lsp | extension was successfully linked.
[I 2024-05-27 23:07:45.158 ServerApp] jupyter_server_terminals | extension was successfully linked.
[I 2024-05-27 23:07:45.172 ServerApp] jupyterlab | extension was successfully linked.
[I 2024-05-27 23:07:45.611 ServerApp] notebook_shim | extension was successfully linked.
[I 2024-05-27 23:07:45.762 ServerApp] notebook_shim | extension was successfully loaded.
[I 2024-05-27 23:07:45.768 ServerApp] jupyter_lsp | extension was successfully loaded.
[I 2024-05-27 23:07:45.771 ServerApp] jupyter_server_terminals | extension was successfully loaded.
[I 2024-05-27 23:07:45.774 LabApp] JupyterLab extension loaded from /usr/local/miniconda3/lib/python3.9/site-packages/jupyterlab
[I 2024-05-27 23:07:45.774 LabApp] JupyterLab application directory is /usr/local/miniconda3/share/jupyter/lab
[I 2024-05-27 23:07:45.776 LabApp] Extension Manager is 'pypi'.
[I 2024-05-27 23:07:45.783 ServerApp] jupyterlab | extension was successfully loaded.
[I 2024-05-27 23:07:45.784 ServerApp] Serving notebooks from local directory: /home/HwHiAiUser/samples/notebooks
[I 2024-05-27 23:07:45.784 ServerApp] Jupyter Server 2.12.5 is running at:
[I 2024-05-27 23:07:45.784 ServerApp] http://orangepiaipro:8888/lab?token=f571de4a5eb5430f719d2ef9c36d5a66a0fe91f6efaecb5f
[I 2024-05-27 23:07:45.784 ServerApp]     http://127.0.0.1:8888/lab?token=f571de4a5eb5430f719d2ef9c36d5a66a0fe91f6efaecb5f
[I 2024-05-27 23:07:45.785 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 2024-05-27 23:07:45.792 ServerApp] 
    
    To access the server, open this file in a browser:
        file:///home/HwHiAiUser/.local/share/jupyter/runtime/jpserver-3227-open.html
    Or copy and paste one of these URLs:
        http://orangepiaipro:8888/lab?token=f571de4a5eb5430f719d2ef9c36d5a66a0fe91f6efaecb5f
        http://127.0.0.1:8888/lab?token=f571de4a5eb5430f719d2ef9c36d5a66a0fe91f6efaecb5f
[I 2024-05-27 23:07:45.853 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
[W 2024-05-27 23:08:12.156 LabApp] Could not determine jupyterlab build status without nodejs

监听了 0.0.0.0 之后,我在本地macbookpro 上浏览器直接访问 http://192.168.31.19:8888/lab?token=f571de4a5eb5430f719d2ef9c36d5a66a0fe91f6efaecb5f 即可。

img

AI样例_卡通图像生成

卡通图像生成样例使用 cartoonGAN 模型对输入图片进行卡通化处理。在样例中已经包含转换后的 om 模型和测试图片,可以按照以下流程在 Jupyter Lab 中运行该样例。

样例操作

  1. 首先在 Jupyter Lab 界面双击“05-cartoonGAN_picture” , 进入到该目录下。
  2. 在该目录下有运行该示例的所有资源,其中 main.ipynb 是在 Jupyter Lab 中运行该样例的文件,双击打开 main.ipynb,在右侧窗口中会显示 main.ipynb 文件中的内容。
  3. 单击 >> 按钮运行样例,在弹出的对话框中单击“Restart” 按钮,此时该样例开始运行。
  4. 若干秒后, 在窗口中出现了一张卡通画风格的风景图。

如下便是根据教程指导,未修改代码情况下直接运行后得到的结果。

img

cartoonGAN 模型解析

CartoonGAN是一种生成对抗网络(GAN)的变体,它的目标是将真实的图片转换为卡通风格的图片。GAN是一种深度学习模型,由两个部分组成:生成器(Generator)和判别器(Discriminator)。生成器的任务是生成新的数据,而判别器的任务是判断这些数据是否真实。在CartoonGAN中,生成器的任务是将输入的真实图片转换为卡通风格的图片,而判别器的任务是判断生成的图片是否具有卡通风格。

CartoonGAN的主要创新点在于它引入了一个特殊的损失函数,称为边缘损失(Edge-Promoting Loss)。这个损失函数的目标是保持生成的卡通图片的边缘清晰,这是因为在卡通图片中,边缘通常比真实图片更加清晰和明显。

CartoonGAN的另一个特点是它使用了大量的卡通图片进行训练。这使得生成的图片能够更好地模仿卡通的风格和特点。

总的来说,CartoonGAN是一种强大的模型,能够将真实的图片转换为具有卡通风格的图片,在艺术创作、动画制作等领域有着广泛的应用。

样例解析

开发板自带的样例都是使用 Python 编写的,并调用了 Python 版本的 AscendCL 编程接口。

本示例具体的样例代码位于 05-cartoonGAN_picture/main.ipynb,对该文件进行初步的解析。

总体步骤大致是这样:
1.初始化acl资源:在调用acl相关资源时,必须先初始化AscendCL,否则可能会导致后续系统内部资源初始化出错。
2.对图片进行前处理:在此样例中,我们首先根据图片路径,构造AclLiteImage类型的数据,再利用.jpegd和.crop_and_paste_get_roi转换图片格式、裁剪图片。注意由于模型输入是yuv格式,所以我们利用了AclLiteImageProc.jpegd将图片转为yuv,使得模型正常推理。
3.推理:利用AclLiteModel.execute接口对图片进行推理。
4.对推理结果进行后处理:包括两个步骤,即转换像素值值域以及将图片缩放到原图大小。
5.可视化图片:利用plt将结果画出。

DIY生成自己的卡通图像

上手对示例做个修改,不妨自己搞个图片来试试。随手下载了一张东契奇的照片,有点好奇东契奇卡通化之后长啥样。

因为以前吃过图片版本的坑,我也不确定这张东契奇的帅照是否有版权问题,因此就不放原图了,大家直接看效果图。

具体操作上,本地使用scp命令上传图片至开发板指定目录。

 % scp Don77.jpg HwHiAiUser@192.168.31.19:~/samples/notebooks/05-cartoonGAN_picture/
HwHiAiUser@192.168.31.19's password: 
Don77.jpg                                     100%   38KB   3.4MB/s   00:00 

将 Don77.jpg,修改为默认的图片文件名,之后返回 Jupyter Lab 点击 >>,重新运行示例。

若干秒之后,卡通版的东契奇上线,难以形容。这和我理解的卡通差异比较大,哈哈。

img

小结

香橙派 AI pro 开发板正是面向嵌入式AI场景而生。如何发挥嵌入式设备小巧灵活的优势,在低功耗、边缘场景如何进行应用更好地发挥优势。香橙派 AI pro 给出丰富的AI样例。开发板在镜像中自带了 jupyter lab,并且附带了多个AI样例,极大降低了开发者上手AI的门槛。同时社区也涌现了不少有趣的应用,也对开发者具有参考意义。

这次算是小试牛刀,记录了搭建香橙派AI pro开发板的开发环境的整个过程,并且用开发板生成了卡通图像。

但这个应用肯定不是最理想的方式,如果要生成图像为何不在PC上运行,要在嵌入式设备上做呢?还需要琢磨琢磨。现在嵌入式设备更多是识别场景,目标检测、图像识别,至于图像生成还未看到典型的场景应用。

后续可以思考下,该怎么样发挥嵌入式AI的长处,做点更有意思的东西。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker安装Redis(云服务器)

准备: 在云服务器中开启6370端口号 docker run -d --name redis -p 6379:6379 redis 这条命令使用docker运行一个名为"redis"的容器,映射容器的6379端口到主机的6379端口,并且使用redis镜像来运行容器。REDIS是一个开源的内存数据…

记 Codes 开源免费研发管理平台 —— 日报与工时融合集中式填报的创新实现

继上一回合生成式全局看板的创新实现后,本篇我们来讲一讲日报与工时融合集中式填报的创新实现。 市面上所有的研发管理软件,大多都有工时相关功能,但是却没有日报功能,好像也没什么问题,但是在使用过程中体验非常不…

RandLA-Net 训练自定义数据集

https://arxiv.org/abs/1911.11236 搭建训练环境 git clone https://github.com/QingyongHu/RandLA-Net.git搭建 python 环境 , 这里我用的 3.9conda create -n randlanet python3.9 source activate randlanet pip install tensorflow2.15.0 -i https://pypi.tuna.tsinghua.e…

IDEA 安装BPMN插件-Activiti BPMN visualizer

IDEA安装BPMN插件 idea 18版本之前idea 18版本之后安装插件 推荐使用 Activiti BPMN visualizer插件注意 创建bpmn文件使用可视化面板 在可视化面板中右键可创建各种节点每个节点上都有连线 删除 设置的按钮 保存图片 idea 18版本之前 可以通过搜索插件actiBPMN直接安装 idea…

VBA代码解决方案第十四讲 如何利用VBA检查单元格中是否含有公式

《VBA代码解决方案》(版权10028096)这套教程是我最早推出的教程,目前已经是第三版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一样把自己喜欢的代码…

如何格式化只读U盘?

U盘只读无法格式化,该怎么处理?别担心!本文将向你提供一些实用方法,助你解决U盘写保护的难题。这些方法能有效帮助你解除U盘的只读状态,从而可以顺利进行格式化和其他操作。 不能格式化只读U盘 “我购买了一个U盘&…

64位和32位对C++ 对long类型的使用造成程序崩溃、内存泄漏问题。

系列文章目录 1、理解32位和64位下long类型和int类型不同 2、理解release和debug版本编译的可执行程序的区别 3、谨慎在64位下对long类型与int类型去赋值和相互转换 文章目录 系列文章目录前言一、int、long类型二、使用步骤1.示例代码 前言 编译环境:qt -c、linu…

代码随想录算法训练营第三十二 | ● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

122.买卖股票的最佳时机II 讲解链接:https://programmercarl.com/1005.K%E6%AC%A1%E5%8F%96%E5%8F%8D%E5%90%8E%E6%9C%80%E5%A4%A7%E5%8C%96%E7%9A%84%E6%95%B0%E7%BB%84%E5%92%8C.html 简单思路:逐个计算连续两天的股票差值,sum初始为零&…

SAP 物料的与压缩库存数据不一致

在测试系统中进行501和561增加库存的时候,系统提示物料的预压缩库存数据不一致的报错。 如下图所示: 首先想到的就是搜SAP的NOTES,找到了相关的两个note:293356 note:2197042 表示:数据库表 ACDOCA 和 ACDOCA_M_EXTRACT 之间的差异。 经过查询发现是由于物料分类账中的…

平衡二叉树的应用举例

AVL 是一种自平衡二叉搜索树,其中任何节点的左右子树的高度之差不能超过 1。 AVL树的特点: 1、它遵循二叉搜索树的一般属性。 2、树的每个子树都是平衡的,即左右子树的高度之差最多为1。 3、当插入新节点时,树会自我平衡。因此…

第N3周:Pytorch文本分类入门

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 目录 本周任务: 文本分类流程图: 需要的环境: 数据集: TextClassificationModel模型介绍&#xff1a…

Java基础语法——字符串(String/StringBuilder/Stringjoiner)

String Java的String类是不可变的,意味着一旦创建,其值就不能被改变。String类提供了丰富的API来操作字符串。 以下是一些常用的方法: 构造方法: 有以下几种常见的: public class stringlearn {public static void…

民国漫画杂志《时代漫画》第34期.PDF

时代漫画34.PDF: https://url03.ctfile.com/f/1779803-1248636026-7e46c5?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了,截止1937年6月战争来临被迫停刊共发行了39期。 ps: 资源来源网络!

flume-ng-sql | 支持JDK8+ | 支持Flume 1.11.0 | 使用 Kotlin 编写

文章目录 简介用法 简介 flume-ng-sql-source 作者已经停止维护了,并且已经不支持新版Flume,我们决定开启这一项目 flume-ng-sql。 用法 像 flume-ng-sql-source 一样将 flume-ng-sql 发行的 Jar 包导入lib下,必要时需要添加自己 MySQL 版本…

IMU状态预积分代码实现 —— IMU状态预积分类

IMU状态预积分代码实现 —— IMU状态预积分类 实现IMU状态预积分类 实现IMU状态预积分类 首先,实现预积分自身的结构。一个预积分类应该存储一下数据: 预积分的观测量 △ R ~ i j , △ v ~ i j , △ p ~ i j \bigtriangleup \tilde{R} _{ij},\bigtrian…

【Python爬虫--scrapy+selenium框架】超详细的Python爬虫scrapy+selenium框架学习笔记(保姆级别的,非常详细)

六,selenium 想要下载PDF或者md格式的笔记请点击以下链接获取 python爬虫学习笔记点击我获取 Scrapyselenium详细学习笔记点我获取 Python超详细的学习笔记共21万字点我获取 1,下载配置 ## 安装: pip install selenium## 它与其他库不同…

【C++】C++11新特性:列表初始化、声明、新容器、右值引用、万能引用和完美转发

目录 一、列表初始化 1.1 { } 初始化 1.2 std::initializer_list 二、声明 2.1 auto 2.2 decltype 2.3 nullptr 三、新容器 四、右值引用和移动语义 4.1 左值和左值引用 4.2 右值和右值引用 4.3 左值引用与右值引用比较 4.4 右值引用使用场景和意义:移…

AI能否代替ACE

什么是ACE ? 申请ACE需要以下条件: 1.发表与oracle相关的技术博客 2.参与Oracle相关的技术大会 3.对Oracle社区做出贡献。 这正好是AI应用的场景吗? 在一个群里有个群友质疑AI落地,以及应用领域? Kelvin:我一直在迷茫,学不好。这么多有趣AI 问题&…

冯喜运:5.31晚间黄金原油行情分析及尾盘操作策略

【黄金消息面分析】:周五(5月31日),最新发布的数据显示,美国4月核心PCE物价指数月率录得0.2%,低于预期(0.3%),经济学家认为,核心指数比整体指数更能反映通胀。除此之外,美…

[openwrt-21.02]openwrt-21.02 make menuconfig不显示luci-app-firewall问题分析及解决方案

问题描述 make menuconfig在 在applications界面没有luci-app-firewall 问题分析 首先重新执行 ./scripts/feeds update -a ./scripts/feeds install -a 然后再次执行make menuconfig,依然不显示,所以不是feeds安装的问题 最后看到log有个openmptc…