CLIP(Contrastive Language-Image Pre-Training)在SOPHON BM1684X上进行推理
1、链接
https://github.com/sophgo/sophon-demo/tree/release/sample/CLIP
2、开发环境中交叉编译生成sophon_arm-3.8.0-py3-none-any.whl
3、sail安装
算能官网技术资料中SDK-24.04.01的
libsophon_soc_0.4.1_aarch64.tar.gz
sophon-mw-soc_0.4.1_aarch64.tar.gz
SOPHON-SAIL源码
4、对应的python版本
python3 -m dfss --url=open@sophgo.com:/toolchains/pythons/Python-3.8.2.tar.gz
5、交叉编译sail源码
sail目录下mkdir build && cd buildcmake -DBUILD_TYPE=soc \-DCMAKE_TOOLCHAIN_FILE=../cmake/BM168x_SOC/ToolChain_aarch64_linux.cmake \-DPYTHON_EXECUTABLE=./python_3.8.2/bin/python3 \-DCUSTOM_PY_LIBDIR=./python_3.8.2/lib \-DLIBSOPHON_BASIC_PATH=/sdk/libsophon_0.5.1_aarch64/opt/sophon/libsophon-0.5.1 \-DFFMPEG_BASIC_PATH=/sdk/sophon-mw_0.10.0_aarch64/opt/sophon/sophon-ffmpeg_0.10.0 \-DOPENCV_BASIC_PATH=/sdk/sophon-mw_0.10.0_aarch64/opt/sophon/sophon-opencv_0.10.0 ..make pysail打包生成whl包cd ../python/socchmod +x sophon_soc_whl.sh./sophon_soc_whl.sh
6、BM1684X安装环境
sudo apt install unzip
sudo apt install p7zip p7zip-fullpip3 install ftfy
pip3 install regex
pip3 install torch
pip3 install torchvision
pip3 install --upgrade torch --no-cache-dir
pip3 install pillow
pip3 install streamlit
pip3 install certifi
pip3 install cryptography
pip3 install pyOpenSSL
安装编译生成的sophon_arm-3.8.0-py3-none-any.whl
pip3 install sophon_arm-3.8.0-py3-none-any.whl --force-reinstall
7、启动CLIP后端 前端
export PYTHONPATH=$PYTHONPATH:/opt/sophon/sophon-opencv_0.10.0/opencv-python
python3 server-backend.py --host 0.0.0.0 --port 8080
streamlit run server-front.py "http://localhost:8080" --server.address 0.0.0.0 --server.port 5000
8、浏览器访问BM1684X启动CLIP的IP地址
http://IP地址:5000/
相关文章:

CLIP(Contrastive Language-Image Pre-Training)在SOPHON BM1684X上进行推理
1、链接 https://github.com/sophgo/sophon-demo/tree/release/sample/CLIP2、开发环境中交叉编译生成sophon_arm-3.8.0-py3-none-any.whl 3、sail安装 算能官网技术资料中SDK-24.04.01的 libsophon_soc_0.4.1_aarch64.tar.gz sophon-mw-soc_0.4.1_aarch64.tar.gz SOPHON-SA…...
Ascend Extension for PyTorch的源码解析
1 源码下载 Ascend对pytorch代码的适配,可从以下链接中获取。 Ascend/pytorch 执行如下命令即可。 git clone https://gitee.com/ascend/pytorch.git2 目录结构解析 源码下载后,如果需要编译torch-npu,最好保持pytorch的源码版本匹配&…...

鸿蒙HarmonyOS开发:给应用添加基础类型通知和进度条类型通知(API 12)
文章目录 一、通知介绍1、通知表现形式2、通知结构3、请求通知授权 二、创建通知1、发布基础类型通知2、发布进度类型通知3、更新通知4、移除通知 三、设置通知通道1、通知通道类型 四、创建通知组五、为通知添加行为意图1、导入模块。2、创建WantAgentInfo信息。4、创建WantAg…...

从零开始使用YOLOv11——Yolo检测detect数据集自建格式转换为模型训练格式:20w+图片1w+类别代码测试成功
在之前的文章中记录了YOLO环境的配置安装和基本命令的一些使用,上一篇博文的地址快速链接:从零开始使用YOLOv8——环境配置与极简指令(CLI)操作:1篇文章解决—直接使用:模型部署 and 自建数据集:…...

自动化新时代:机器取代工作,我们该如何重塑自我?
内容概要 在自动化时代的浪潮中,技术的飞速发展对传统工作模式产生了深远影响。我们眼前浮现的是一个充满机遇与挑战的新世界。许多岗位面临被机器取代的威胁,然而,这一变化并不仅仅是消极的。在这个背景下,个体不仅需要重新审视…...
GEE 土地分类——利用Sentinel-2数据进行土地分类
目录 简介 函数 ee.Classifier.smileRandomForest(numberOfTrees, variablesPerSplit, minLeafPopulation, bagFraction, maxNodes, seed) Arguments: Returns: Classifier 代码 结果 简介 利用Sentinel-2数据进行土地分类的流程大致可分为以下几个步骤: 1. 数据获取…...
《C++ 游戏开发》
一、引言 在当今的数字娱乐时代,游戏开发已经成为一个充满活力和创新的领域。C 作为一种强大的编程语言,在游戏开发中占据着重要的地位。它具有高效的性能、丰富的功能和广泛的适用性,能够满足游戏开发中对性能和灵活性的高要求。本文将深入探…...
2024年11月10日系统架构设计师考试题目回顾
案例分析 试题一:质量属性 基于描述填空是什么质量属性,常规题。(性能,功能,安全,可用等等)可用性而言,王工建议采用 ping/echo 机制检测,不过从资源使用角度ÿ…...
测试实项中的偶必现难测bug--苹果支付丢单问题
问题描述: app支付后,由于某种原因(可能是网络、流量不稳定、或者用户快速频繁操作。。。)会造成一定概率性的回调苹果支付结果失败的情况出现,表现的直观现象就是客户反馈已经支付了,包括苹果支付也是有记录,但是我们的后台显示的是已取消状态的订单 验证难点:测试和…...
Elasticsearch的数据类型
Elasticsearch(简称 ES)支持多种数据类型,主要分为以下几类: 1. 基本数据类型 Text:用于全文搜索的文本字段。ES 会对其内容进行分词处理。Keyword:适用于精确匹配的字段,例如名称、标签等。ES 不会对其内容分词处理。Integer:整数类型,包括 byte、short、integer 和…...
SSL 证书申请以及配置流程
SSL 证书申请以及配置流程 手动申请免费 SSL 证书的简明指南 如果你希望手动为你的网站申请免费的 SSL 证书,Let’s Encrypt 提供了一个很棒的免费服务。而 Certbot 则是官方推荐的工具,可以帮助你完成证书的申请和配置。以下是如何一步步完成的详细说…...

[Docker#4] 镜像仓库 | 部分常用命令
目录 什么是 Docker Registry 镜像仓库生活案例 镜像仓库分类 镜像仓库工作机制 常用的镜像仓库 私有仓库 镜像仓库命令 镜像命令[部分] 容器命令[部分] 什么是 Docker Registry 定义:Docker Registry 负责存储、管理和分发镜像,并提供了登录认…...
工业通信协议对比:OPC-UA、Modbus、MQTT、HTTP
综合对比表 对比项OPC-UAModbusMQTTHTTP通信效率低,带宽消耗高高高,开销低,效率高低,带宽消耗大实时性一般,延迟较高高,延迟低高,低延迟低,延迟高性能消耗高,需要高性能…...
docker 常用方法
目录 docker参数解释 基础信息和环境变量设置 容器运行和管理相关参数 数据卷挂载 GPU 相关参数 镜像相关参数 查看现有的镜像 docker images 查看正在运行的docker docker ps 1、docker启动停止及查看状态 启动docker: systemctl start docker 停止docker…...

区块链技术入门:以太坊智能合约详解
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 区块链技术入门:以太坊智能合约详解 区块链技术入门:以太坊智能合约详解 区块链技术入门:以太…...

特定数据库的备份脚本
该脚本 mysql_backup.sh 是一个 MySQL 数据库的备份脚本,以下是它的工作原理和需要注意的细节: 脚本内容分析 1.设置时间变量 TIME : TIMEdate %F_%H-%M-%S该变量 TIME 存储当前日期和时间,格式为 YYYY-MM-DD_HH-MM-SS,用于生…...

uni-app打包后报错云服务空间未关联
使用uni-app打包到h5 项目里面用到了uni-app的云端一体城市选择组件,这个组件数据用到了uniCloud云服务空间,在本地运行没问题,打包之后测试环境报错: 一顿查,查到了官网是这样说的: cli publish --platfo…...

FPGA学习(10)-数码管
前3节视频目的是实现显示0~F的数码管仿真,后3节是用驱动芯片驱动数码管。 目录 1.数码管显示原理 2.代码过程 2.1仿真结果 3.串行移位寄存器原理 3.1原理 编辑 3.2 数据手册 3.3 先行设计思路 4.程序 4.1确定SRCLK的频率 4.2序列计数器 4.3 不同coun…...

C++(继承)
继承的语法 继承的好处:减少重复代码 语法: class 子类 : 继承方法 父类 子类 也称为 派生类 父类 也成为 基类 继承方式 公共继承 保护继承 私有继承 结论:父类中私有成员也是被子类继承下去了,只是由编译器给隐藏后…...
华为OD机试 - RSA加密算法(Java 2024 E卷 100分)
long n (long) Math.sqrt(num); 与long n (long) Math.floor(Math.sqrt(num)); 这两行代码的目的都是计算 num 的平方根,并将结果转换为 long 类型的整数。然而,它们在处理方式上有一些微小的差别。 long n (long) Math.sqrt(num);long n (long) M…...

大模型模型部署和暴露接口
创建环境 激活案件 安装相关依赖 conda create -n fastApi python3.10 conda activate fastApi conda install -c conda-forge fastapi uvicorn transformers pytorch pip install safetensors sentencepiece protobuf 新建文件夹 mkdir App cd App touch main.py 复制代码…...

【多线程初阶】阻塞队列 生产者消费者模型
文章目录 一、阻塞队列二、生产者消费者模型(一)概念(二)生产者消费者的两个重要优势(阻塞队列的运用)1) 解耦合(不一定是两个线程之间,也可以是两个服务器之间)2) 削峰填谷 (三)生产者消费者模型付出的代价 三、标准库中的阻塞队列(一)观察模型的运行效果(二)观察阻塞效果1) 队…...

Qt(part1)Qpushbutton,信号与槽,对象树,自定义信号与槽,lamda表达式。
1、创建Qt程序 2、命名规范及快捷键 3、Qpushbutton按钮创建 4、对象树概念 5、信号与槽 6、自定义信号与槽 7、当自定义信号和槽发生重载时 8、信号可以连接信号,信号也可以断开。 9、lamda表达式...

【Spark征服之路-2.3-Spark运行架构】
运行架构 Spark 框架的核心是一个计算引擎,整体来说,它采用了标准 master-slave 的结构。 如下图所示,它展示了一个 Spark 执行时的基本结构。图形中的 Driver 表示 master,负责管理整个集群中的作业任务调度。图形中的 Executor …...

PySpark、Plotly全球重大地震数据挖掘交互式分析及动态可视化研究
全文链接:https://tecdat.cn/?p42455 分析师:Yapeng Zhao 在数字化防灾减灾的时代背景下,地震数据的深度解析成为公共安全领域的关键议题。作为数据科学工作者,我们始终致力于通过技术整合提升灾害数据的应用价值(点击…...
解决cocos 2dx/creator2.4在ios18下openURL无法调用的问题
由于ios18废弃了旧的openURL接口,我们需要修改CCApplication-ios.mm文件的Application::openURL方法: //修复openURL在ios18下无法调用的问题 bool Application::openURL(const std::string &url) {// NSString* msg [NSString stringWithCString:…...
C++11完美转发
在 C11 之前,泛型函数在传递参数时无法保证参数的原始类型(左值或右值)导致额外的拷贝或移动操作,完美转发是一种高效传递技术,能够保持参数的原始特性,避免额外的性能开销 完美转发是指在泛型编程中以参数…...
Significant Location Change
一、Significant Location Change是什么 “Significant Location Change(重大位置变化)” 是苹果 iOS 系统中一项用于在应用未主动运行时,监测设备位置显著变化的功能。它主要通过基站、Wi-Fi 网络等信号来判断设备是否发生了有意义的位置移…...

Docker构建自定义的镜像
构建自定义的 Docker 镜像是 Docker 使用中的核心操作之一。通过自定义镜像,你可以将应用程序及其依赖环境打包成一个可移植的容器化镜像。以下是详细的步骤和注意事项: 1. 准备工作 在构建自定义镜像之前,你需要准备以下内容: D…...

『uniapp』把接口的内容下载为txt本地保存 / 读取本地保存的txt文件内容(详细图文注释)
目录 预览效果思路分析downloadTxt 方法readTxt 方法 完整代码总结 欢迎关注 『uniapp』 专栏,持续更新中 欢迎关注 『uniapp』 专栏,持续更新中 预览效果 思路分析 downloadTxt 方法 该方法主要完成两个任务: 下载 txt 文件:通…...