MindSpore21天實(shí)戰(zhàn)營(yíng)(1)使用MindSpore Lite實(shí)現(xiàn)手機(jī)端圖像檢測(cè)

      網(wǎng)友投稿 892 2025-04-01

      到2020年11月4日為止,MindSpore實(shí)戰(zhàn)營(yíng)已經(jīng)進(jìn)行到Part3了,張小白在10月28日做了個(gè)體驗(yàn)作業(yè):使用官方做好的APK?,在華為手機(jī)上安裝后,推理了以下幾張圖發(fā)了個(gè)朋友圈。

      張小白一直沒(méi)有去做進(jìn)階作業(yè)。。。其實(shí),主要的原因很可能是因?yàn)樽约河X(jué)得自己體驗(yàn)作業(yè)做得也不好——無(wú)法找到作業(yè)題中所謂的“搞怪”照片:

      搞笑而不搞怪,搞怪而不搞笑——要“雙搞”真的很難,真是傷透了張小白的腦筋。

      直到張小白看到了論壇里 ML 飯 大大的文字。(https://bbs.huaweicloud.com/forum/thread-83725-1-1.html? )這才提起一點(diǎn)寫(xiě)作業(yè)的興趣。飯大大的文字雖然寫(xiě)的很好,但是親自走一回還是必要的。本來(lái)在飯大大的帖子后面跟了個(gè)貼,想寫(xiě)一個(gè)tips就完事兒了。結(jié)果發(fā)現(xiàn),需要躺的坑還是有幾個(gè)的。想來(lái)應(yīng)該可以成一篇文字。。。而且,寫(xiě)文字是有代價(jià)的。。。想到這點(diǎn),張小白不禁手癢癢的。。。

      第一次的進(jìn)階作業(yè)的內(nèi)容是:利用官方提供的MindSpore Lite的相關(guān)Android項(xiàng)目生成一個(gè)APK,裝到安卓手機(jī)上,然后拍幾張照片發(fā)朋友圈,同時(shí)上傳到指定位置候?qū)彙!!?/p>

      首先,根據(jù)本次實(shí)戰(zhàn)的指導(dǎo)文檔要求,需要安裝android studio 4.0,SDK版本大于等于26,并安裝NDK 21.3,CMake 3.10.2.

      那就開(kāi)干吧。。。

      MindSpore21天實(shí)戰(zhàn)營(yíng)(1)使用MindSpore Lite實(shí)現(xiàn)手機(jī)端圖像檢測(cè)

      自己的android studio(以下簡(jiǎn)稱(chēng)AS)自從安裝后,一直在在硬盤(pán)里待著(就是不實(shí)戰(zhàn))。如果這次不開(kāi)干的話(huà),估計(jì)下次啟動(dòng)它的時(shí)間應(yīng)該是 華為云新組織的 《移動(dòng)應(yīng)用開(kāi)發(fā)全棧成長(zhǎng)計(jì)劃》了。(此處別的小助手應(yīng)該表示下感激。。。)

      首先下載MindSpore工程包。

      當(dāng)然是一股腦兒把整個(gè)MindSpore都下下來(lái)。。。

      打開(kāi)AS,進(jìn)入下面的configure-》setting。

      進(jìn)入設(shè)置頁(yè)面:選擇 Appearance & Behavior? -> System Settings->Android SDK.

      按照文檔的要求選擇NDK 21.3,CMake 3.10.2:

      點(diǎn)擊OK

      繼續(xù)OK

      點(diǎn)擊Accept,Next

      看上圖,它會(huì)去dl.google.com下載東西。這時(shí),飯大大的文檔就起到指導(dǎo)作用了。。。

      在網(wǎng)站ping.chinaz.com中搜索dl.google.com:

      然后記下找到的地址(隨便一個(gè),比如Ping的較快的)

      寫(xiě)入本機(jī)的host文件:(路徑一般為:C:\Windows\System32\drivers\etc)

      下載如飛一般的快。。。

      很快,NDK和CMake就裝完了。

      然后重新打開(kāi)AS,并打開(kāi)現(xiàn)有工程:工程位置:F:\learn\mindspore\model_zoo\official\lite\image_classification

      結(jié)果系統(tǒng)就進(jìn)入了漫長(zhǎng)的gradle下載的等待期,項(xiàng)目工程遲遲不出內(nèi)容:。。。

      張小白就知道該找度娘干活了。。。

      (比如這個(gè)鏈接:https://www.jianshu.com/p/6a6c3a07b39f?utm_campaign? )

      先下載好gradle-6.1.1-all.zip

      然后刪除?C:\Users\zhang\.gradle\wrapper\dists\gradle-6.1.1-all\cfmwm155h49vnt3hynmlrsdst 目錄下的所有文件。并將下載好的gradle-6.1.1-all.zip 拷貝進(jìn)去。。

      此外,由于gradle下載包的時(shí)候缺省還會(huì)找國(guó)外的源,所以需要在?C:\Users\zhang\.gradle 下新建一個(gè) init.gradle的文件:

      內(nèi)容如下:

      allprojects{ ????repositories?{ ????????def?ALIYUN_REPOSITORY_URL?=?'http://maven.aliyun.com/nexus/content/groups/public' ????????def?ALIYUN_JCENTER_URL?=?'http://maven.aliyun.com/nexus/content/repositories/jcenter' ????????all?{?ArtifactRepository?repo?-> ????????????if(repo?instanceof?MavenArtifactRepository){ ????????????????def?url?=?repo.url.toString() ????????????????if?(url.startsWith('https://repo1.maven.org/maven2')?||?url.startsWith('http://repo1.maven.org/maven2'))?{ ????????????????????project.logger.lifecycle?"Repository?${repo.url}?replaced?by?$ALIYUN_REPOSITORY_URL." ????????????????????remove?repo ????????????????} ????????????????if?(url.startsWith('https://jcenter.bintray.com/')?||?url.startsWith('http://jcenter.bintray.com/'))?{ ????????????????????project.logger.lifecycle?"Repository?${repo.url}?replaced?by?$ALIYUN_JCENTER_URL." ????????????????????remove?repo ????????????????} ????????????} ????????} ????????maven?{ ????????????url?ALIYUN_REPOSITORY_URL ????????????url?ALIYUN_JCENTER_URL ????????} ????} ????buildscript{ ????????repositories?{ ????????????def?ALIYUN_REPOSITORY_URL?=?'http://maven.aliyun.com/nexus/content/groups/public' ????????????def?ALIYUN_JCENTER_URL?=?'http://maven.aliyun.com/nexus/content/repositories/jcenter' ????????????all?{?ArtifactRepository?repo?-> ????????????????if(repo?instanceof?MavenArtifactRepository){ ????????????????????def?url?=?repo.url.toString() ????????????????????if?(url.startsWith('https://repo1.maven.org/maven2')?||?url.startsWith('http://repo1.maven.org/maven2'))?{ ????????????????????????project.logger.lifecycle?"Repository?${repo.url}?replaced?by?$ALIYUN_REPOSITORY_URL." ????????????????????????remove?repo ????????????????????} ????????????????????if?(url.startsWith('https://jcenter.bintray.com/')?||?url.startsWith('http://jcenter.bintray.com/'))?{ ????????????????????????project.logger.lifecycle?"Repository?${repo.url}?replaced?by?$ALIYUN_JCENTER_URL." ????????????????????????remove?repo ????????????????????} ????????????????} ????????????} ????????????maven?{ ????????????????url?ALIYUN_REPOSITORY_URL ????????????????url?ALIYUN_JCENTER_URL ????????????} ????????} ????} }

      這樣就使用了 阿里云的gradle源。

      然后重新打開(kāi)?F:\learn\mindspore\model_zoo\official\lite\image_classification 這個(gè)工程,頁(yè)面就會(huì)打開(kāi)了。。。(當(dāng)然,由于gradle會(huì)自動(dòng)做build,在打開(kāi)項(xiàng)目的過(guò)程中,還需要等待(loading),但是右下角的進(jìn)度會(huì)告訴你,AS在快速的下載一些包。。。)

      如果沒(méi)有什么意外,會(huì)正常Loading結(jié)束并告訴我們,gradle已經(jīng)ok。

      工程打開(kāi)后:

      點(diǎn)擊Build-》Build Bundles/APK(s)->Build APK(s)

      系統(tǒng)就會(huì)開(kāi)始編譯,結(jié)果生成了如下的文件:

      app-customDebugType-unsigned.apk

      好奇怪的名字,就將它安裝到手機(jī)上吧。

      張小白用的方法是:電腦上,打開(kāi)QQ發(fā)出去。。。

      手機(jī)上打開(kāi)QQ收下來(lái)。。

      點(diǎn)擊“安裝”

      點(diǎn)擊“允許”

      點(diǎn)擊“繼續(xù)安裝”

      不可避免的失敗了。

      這個(gè)其實(shí)張小白以前也遇到過(guò)(就是這次忘記了)。就是沒(méi)簽名的安裝包,無(wú)法裝。。。。

      所以,還是需要AS生成一個(gè)帶簽名的安裝包。下面先解決這個(gè)問(wèn)題。

      當(dāng)然是繼續(xù)度娘。。。。

      好像也不難。。

      點(diǎn)擊build-》Generate Signed Bundle/APK...

      出現(xiàn)以下畫(huà)面:

      選擇APK,next

      點(diǎn)擊Create New...

      在錄入以上內(nèi)容的同時(shí),記得在工程的目錄下建立一個(gè)signAPK目錄(存jks文件)

      在前面那張圖點(diǎn)擊OK繼續(xù)。。

      選擇release并都選中v1,v2。。點(diǎn)擊Finish。

      系統(tǒng)當(dāng)時(shí)會(huì)彈出一個(gè)提示框提示用戶(hù)需要處理一下jks文件。。。不要緊。把那句話(huà)copy下來(lái)。

      在命令行窗口執(zhí)行:

      當(dāng)然,上面報(bào)了一個(gè)錯(cuò)誤,繼續(xù)度娘發(fā)現(xiàn),原來(lái)是文件名重復(fù)了。。。

      簡(jiǎn)單,修改第二個(gè)文件名為 SignDemo1.jks

      成功的完成了簽名的密鑰導(dǎo)入。

      下面讓張小白生成個(gè)新的帶簽名的APK吧。。。

      重新點(diǎn)擊Build-》Build Bundles/APK(s)->Build APK(s)

      這回成功在app/release目錄下生成了 app-release.apk

      同樣將這個(gè)文件,使用電腦QQ傳過(guò)去:

      然后在手機(jī)上接收。。

      安裝:

      點(diǎn)擊允許。。。

      沒(méi)有風(fēng)險(xiǎn),繼續(xù)安裝。。

      安裝成功。。

      打開(kāi)APP。

      照一下耳機(jī):

      推理出 植物,電風(fēng)扇,基礎(chǔ)設(shè)施,花瓣。。(嗯,花瓣可能是對(duì)的)

      手機(jī),看來(lái)MS Lite只是懂手機(jī)。。

      植物,花園。。。很好。。

      海報(bào)。。。

      當(dāng)然,后面兩個(gè)沒(méi)有識(shí)別出來(lái)是書(shū)。。。這還是有點(diǎn)遺憾的。。。

      原來(lái)MS只深度學(xué)習(xí),卻不識(shí)書(shū)。。。這個(gè)結(jié)論也著實(shí)讓張小白嚇了一跳啊~~

      不過(guò)這個(gè)APP,張小白覺(jué)得,倒是很有可能延伸到張小白最新關(guān)注的垃圾分類(lèi)應(yīng)用上去。。(https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=84854&page=2#pid442638? )

      (全文完,謝謝閱讀)

      MindSpore EI企業(yè)智能

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶(hù)投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶(hù)投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:怎么制作模板保存
      下一篇:軟件定義PLC改變工業(yè)互聯(lián)網(wǎng)系統(tǒng)架構(gòu)
      相關(guān)文章
      亚洲av日韩综合一区二区三区| 亚洲精品第一国产综合亚AV| 亚洲AV成人无码久久WWW| 天天爽亚洲中文字幕| 亚洲欧洲日产v特级毛片| 亚洲精品成人久久| 亚洲国产美女在线观看| 亚洲精品国产福利片| 亚洲精品视频在线观看视频| 久久亚洲精品国产精品| 亚洲高清中文字幕| 亚洲二区在线视频| 亚洲AV无码一区二区三区人| 亚洲性线免费观看视频成熟 | 亚洲首页国产精品丝袜| 午夜在线a亚洲v天堂网2019| 中文字幕亚洲精品无码| 亚洲va中文字幕| 亚洲成av人在片观看| 国产精品亚洲美女久久久| 亚洲伊人久久精品影院| 亚洲人成网亚洲欧洲无码久久| 亚洲精品无码久久久久去q | 亚洲综合欧美色五月俺也去| 亚洲综合久久精品无码色欲| 亚洲国产精品成人AV在线| 国产亚洲男人的天堂在线观看| 亚洲区不卡顿区在线观看| 亚洲午夜久久久久妓女影院| 亚洲AV无码一区二区二三区入口 | 亚洲日本中文字幕| 亚洲成在人线中文字幕| 亚洲一区二区三区高清不卡| 亚洲国产成人手机在线观看| 亚洲A∨精品一区二区三区| 国产亚洲日韩一区二区三区| 亚洲精品免费视频| 色老板亚洲视频免在线观| 亚洲精品人成网线在线播放va| 国产亚洲精彩视频| 亚洲精品无码久久久影院相关影片 |