Qualcomm QCS6490 開發板運行高通AI Hub圖像分類程序

相關代碼可以在如下鏈接下載:

ai-hub-models/apps/android/ImageClassification at main · quic/ai-hub-models · GitHub

所用硬件有:

1. UBUNTU20.04?

2. 高通QCS6490 開發板

對下載下來的代碼進行編譯

1. ubuntu環境配

1. python環境配

如果你的python版本不是支持的版本建議使用Miniconda來管理您的python版本和環境

Installing Miniconda — Anaconda documentation

在您的機器上安裝miniconda。

Linux:安裝完成后,打開一個新的shell窗口

為Qualcomm?AI Hub設置一個環境:

We currently support?Python >=3.8 and <= 3.10

conda create python=3.8 -n qai_hub

conda activate qai_hub

2. 安裝基礎依賴包

pip install qai_hub_models

3. 其他環境配
1. Java、android sdk和sdkmager

安裝Java 11?Java 8

Android SDK 要通過Java運行,我們需要先安裝Java.

java8

sudo apt update

sudo apt install openjdk-8-jre

java -version

Java11

sudo apt update

sudo apt install openjdk-11-jdk

java -version

直接設置環境變量JAVA_HOME來確定當前環境使用的java版本

安裝sdkmager時需要使用的是Java8

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/

安裝sdkmager

Java安裝完成后,接下來安裝Android SDK。我們需要在Android開發者網站上下載sdk-tools-linux.你可以點擊通過瀏覽器下載,也可以在終端輸入以下命令下載

wget https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip

unzip sdk-tools-linux-3859397.zip

以上命令會生成一個新的目錄,我們把生成的目錄tools移動到自己的安裝目錄中

這里,我們假設安裝目錄為"/opt/andoriod/sdk"

sudo mv tools /opt/android/sdk

進入到tools/bin/下面可以使用命令查看當前已經安裝的組件包和列出可安裝組件包

./sdkmanager --list

安裝指定版本的Android SDK:

sdkmanager "build-tools;30.0.3" "platforms;android-32"

ANDROID_HOME設置為ANDROID SDK路徑

export?ANDROID_HOME=/opt/andoriod/sdk/

2. 配置QNN SDK

QNN SDK可以在高通官網上面下載到:

Qualcomm AI Engine Direct SDK | Qualcomm Developer

下載完成后進行解壓即可

2. 代碼編

這時我們需要使用java 11,否則編譯會報錯:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/

進入到下載好的代碼如下目錄中:

cd /home/yangyang/work/ai-hub-models/apps/android/ImageClassification/

執行如下命令:

python build_apk.py -q "QNN SDK PATH" -m mobilenet_v3_small

Do you want us to download the model from AI hub (y/n) y ----選擇y

等待編譯完成............

BUILD SUCCESSFUL in 3s
33 actionable tasks: 33 up-to-date
APK Is copied at current Working Directory
Do you want to install this apk in connected device y------選擇y會將生成的apk安裝到連接的設備上,編譯完成后apk也會被拷貝到當前編譯目錄下

如果出現報錯找不到qtld-release.aar?

到{QNN_Install_path}/?lib/android/?下載

例如/opt/qcom/aistack/qnn/2.20.0.240223/lib/android/

將此文件拷貝到QNN的 lib/android/下面即可

如果出現如下報錯:

Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain

可以到此網址下載gradle-wrapper.jar文件:

http://www.java2s.com/Code/JarDownload/gradle-wrapper/gradle-wrapper.jar.zip

將此文件解壓拷貝到ai-hub-models/apps/android/ImageClassification/gradle/wrapper/下面即可

3.運行效果

作者:高通工程師 廖洋洋

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/41465.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/41465.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/41465.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[SAP ABAP] 子例程

子例程 示例1 主程序(Z437_TEST_2024) INCLUDE文件(Z437_TEST_2024_F01) 輸出結果如下所示 示例2 主程序(Z437_TEST_2024) INCLUDE文件(Z437_TEST_2024_F01) 輸出結果如下所示 補充擴展練習 主程序(Z437_TEST_2024) INCLUDE文件(Z437_TEST_2024_F01) 輸出結果如下所示 提示…

驗證圖像傳感器性能

文章目錄 驗證圖像傳感器性能 驗證圖像傳感器性能 測試類別測試項目具體方法與描述圖像質量測試分辨率測試使用分辨率測試卡&#xff08;如1951 USAF分辨率測試卡&#xff09;拍攝圖像&#xff0c;分析成像的清晰度。動態范圍測試測試傳感器在高對比度場景中的表現&#xff0c…

odoo 物聯網 設備數據采集方案

圖一 架構手稿(許老師專屬) 圖二 架構簡圖 部署 方案一&#xff1a; odoo業務數據庫與設備采集數據庫使用一個instance。 缺點&#xff1a;重啟pg服務相互影響。 方案二&#xff1a; odoo業務數據庫與設備采集數據庫獨立部署&#xff0c;使用兩個instance。 優點&#xff1a;…

RedHat / CentOS安裝FTP服務

本章教程,記錄在RedHat / CentOS中安裝FTP的具體步驟。FTP默認端口:21 1、安裝 epel 源 yum install -y epel-release2、安裝 pure-ftpd yum -y install pure-ftpd3、修改默認配置 # 默認配置位于 /etc/pure-ftpd/pure-ftpd.conf,在配置文件中找到下面幾個參數進行修改:#…

AI視頻生成技術爆發 引領虛擬數字人產業新潮流

2024年剛開局&#xff0c;先有OpenAI的AI視頻生成模型Sora驚艷全網&#xff0c;隨后阿里巴巴發布EMO&#xff0c;一張照片音頻&#xff0c;就能生成具有生動表情和各種頭部姿勢、口型完全匹配高保真的人聲頭像動態視頻。 技術的革新不僅為內容創作者打開了新世界的大門&#xf…

數據結構——隊列練習題

在C語言中&#xff0c;.和->運算符用于訪問結構體的成員變量。它們之間的區別在于&#xff1a;.運算符用于訪問結構體變量的成員。->運算符用于訪問結構體指針變量的成員 1a&#xff08;rear指向隊尾元素后一位&#xff0c;判空判滿時犧牲一個存儲單元&#xff09; 首先…

小抄 20240703

1 “這么多年&#xff0c;什么都沒有變化。” 同樣看到這句話&#xff0c;有人會覺得幸福&#xff0c;有人會覺得悲傷。 好的事沒變&#xff0c;就覺得幸福。 壞的事沒變&#xff0c;會覺得悲傷。 2 人類預測不到的大趨勢&#xff0c;只有技術大爆炸&#xff0c;關于人的那…

PEFT - 安裝及簡單使用

LLM、AIGC、RAG 開發交流裙&#xff1a;377891973 文章目錄 一、關于 PEFT二、安裝1、使用 PyPI 安裝2、使用源碼安裝 三、快速開始1、訓練2、保存模型3、推理4、后續步驟 本文翻譯整理自&#xff1a;https://huggingface.co/docs/peft/index 一、關于 PEFT &#x1f917;PEFT…

算力共享解決方案

目錄 算力共享解決方案 一、引言 二、目標 三、技術架構 一、基礎設施層 二、服務層 三、應用層 四、實施步驟 五、安全與隱私保護 六、經濟模型(信用評估-博弈論) 算力共享解決方案 一、引言 背景分析&#xff1a; 隨著大數據、人工智能、區塊鏈等技術的飛速發展&…

BugKu-WEB-sodirty

目錄 前言 正文 信息收集 代碼審計 驗證 結尾 前言 七月始,暑假副本也正式開啟 正文 信息收集 看著貌似沒啥意義 看樣子是有備份文件 下載下來 快速審計一下 代碼審計 來吧 app.js沒啥東西,主要是功能是實現error 我們找一找有沒有index.js 找到了 \www\routes\in…

MySQL的Docker部署方式

說明:Docker部署MySQL主要是簡單快速&#xff0c;不會對電腦系統造成污染。假如你的本地沒有Docker&#xff0c;或者你不會使用Docker&#xff0c;則使用PyCharm去啟動MySQL&#xff0c;或者直接在本機安裝MySQL都是可以的。最重要的是&#xff0c;你要有一個MySQL環境&#xf…

使用 Git Hooks 防止敏感信息泄露

歡迎關注公眾號&#xff1a;冬瓜白 在日常開發中&#xff0c;我們可能會不小心將敏感信息提交到 Git。為了防止這種情況&#xff0c;可以利用 Git Hooks 編寫一個簡單的腳本&#xff0c;當發現提交中包含敏感詞時&#xff0c;給出提示。 以下是一個基于 pre-commit 鉤子的示例…

踩坑:Unity導出WebGL發布到手機上豎屏時強制顯示橫屏

具體的適配問題 公司的項目需要將游戲導出WebGL 發布到Web平臺 本以為是個很簡單的事情 誰知道卻被個橫豎屏適配搞的頭暈 畢竟只有大學淺淺的學了下HTML這門語言 出來工作后基本上都是在跟C# Lua打交道 言歸正傳 看看具體問題吧 游戲如果從橫屏進入 基本上不會有什么適配問題…

C++ 多進程多線程間通信

目錄 一、進程間通信 1、管道&#xff08;Pipe&#xff09; 2、消息隊列&#xff08;Message Queue&#xff09; 3、共享內存&#xff08;Shared Memory&#xff09; 4、信號量&#xff08;Semaphore&#xff09; 5、套接字&#xff08;Socket&#xff09; 6、信號&…

Finding Global Homophily in Graph Neural Networks When Meeting Heterophily

本文發表于:ICML22 推薦指數: #paper/??? 問題背景: 異配圖的鄰接矩陣難以確定,以及異配圖的計算復雜度開銷大 可行的解決辦法:高通濾波多跳鄰居,GPRGNN(pagerank一類&#xff0c;各階鄰居的權重不同,ACM-GCN&#xff08;高低通濾波,H2GCN&#xff08;應該復雜度很大&…

碳課堂|搞清楚碳足跡,只看這篇文章就夠了

碳足跡管理是碳達峰碳中和的重要政策工具&#xff0c;2023年12月&#xff0c;國家發展改革委、工信部、國家市場監管總局、住房城鄉建設部、交通運輸部等部門聯合印發《關于加快建立產品碳足跡管理體系的意見》&#xff0c;對產品碳足跡管理各項重點任務作出系統部署。 推動碳…

音樂播放器

目錄 一、設計目標二、實現流程1. 數據庫操作2. 后端功能實現3. 前端UI界面實現4. 程序入口 三、項目收獲 一、設計目標 1. 模擬網易云音樂&#xff0c;實現本地音樂盒。 2. 功能分析&#xff1a; 登錄功能窗口顯示加載本地音樂建立播放列表播放音樂刪除播放列表音樂 3.設計思…

通過Java調用OceanBase云平臺API

最近由于工作原因又開始搗鼓OceanBase&#xff0c;OceanBase云平臺(OCP)提供了強大的管理和監控功能&#xff0c;而且對外開放API接口&#xff0c;可以將部分監控整合到自己的平臺&#xff0c;所以寫了個Java調用OCP API的demo做為自己的技術儲備&#xff0c;也想分享給大家。也…

linux下mysql的定時備份

備份是容災的基礎&#xff0c;是指為了防止系統出現操作或系統故障導致數據丟失&#xff0c;而將全部或部分數據集合從應用主機的硬盤或陣列復制到其他的存儲介質的過程為什么備份 硬件故障軟件故障誤操作病毒入侵保留歷史記錄災難性事件 存儲介質 光盤磁帶硬盤磁盤陣列DAS:直接…

[leetcode]文件組合

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<vector<int>> fileCombination(int target) {vector<vector<int>> vec;vector<int> res;int sum 0, limit (target - 1) / 2; // (target - 1) / 2 等效于 target /…