樣例簡介
本Demo是基于Hi3516開發板,使用OpenHarmony3.0-LTS開發的應用。通過獲取攝像頭數據,實現預覽拍照以及路視頻等功能。并且通過后臺AI服務識別喚醒詞來進行語音控制拍照及錄制視頻。
應用運行效果圖:
此為相機的預覽界面。
樣例原理
如上圖所示,用戶對著相機說對應的喚醒此,相機收集到對應的音頻,經過AI服務識別對應的文字,最后傳到相機進行對應的操作。
工程版本
- 系統版本/API版本:OpenHarmony3.0-LTS
- IDE版本:DevEco Device Tool Release 3.0.0.401
快速上手
#### 準備硬件環境
* Hi3516DV300 IoT Camera開發板套件
#### 準備開發環境
開發環境安裝配置參照文檔:[DevEco Device Tool 環境搭建][`gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md`](https://gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md)點擊或復制轉到。
#### 準備工程
本用例采DevEco Device Tool工具進行開發,當配置完開發環境后,我們可以在IDE上進行工程的配置下載。
* 打開DevEco Device Tool,連接遠程linux服務器:[DevEco Device Tool 環境搭建]
* 點擊左下角DevEco插件圖標,然后點擊左邊框出現的主頁,彈出主頁界面,主頁中選擇新建項目,如下圖:
![main_config](//file1.elecfans.com/web2/M00/C6/C2/wKgZomYMFM2AZ8n7AAC9W_lXmoc898.jpg)
* 配置下載工程
![config download](//file1.elecfans.com/web2/M00/C7/A5/wKgaomYMFM2ATHN-AACMaStfbsw516.jpg)
如上圖所示,填寫對應樣例工程的名稱,選擇對應的樣例組件和樣例工程存放路徑后,點擊創建即可進行樣例工程的下載。下載界面如下:
![download](//file1.elecfans.com/web2/M00/CE/C0/wKgaomYhKgmAXmMtAACJ9gUzNcs185.jpg)
當右下角顯示正在下載OpenHarmony鏡像時,耐心等待下載完成即可。
![download](//file1.elecfans.com/web2/M00/CE/C0/wKgaomYhKgmAJPnLAAEzsaT05Yc111.jpg)
#### 準備工具鏈
* 在Projects中,點擊Settings按鈕,進入配置工程界面。
* 在toolchain頁簽中,DevEco Device Tool會自動檢測依賴的編譯工具鏈是否完備,如果提示部分工具缺失,可點擊SetUp按鈕,自動安裝所需工具鏈。
* 工具鏈自動安裝完成后如下圖所示。
![工具鏈配置成功](//file1.elecfans.com/web2/M00/CE/C0/wKgaomYhKgmAGsHGAAEj9TUMXZY952.jpg)
#### 編譯
樣例代碼下載完成后,DevEco Device Tool會重新要求連接遠程服務器,輸入密碼連接后會進入對應的代碼編輯界面,此時點擊左下角DevEco插件圖標,選擇PROJECT TASKS可以查看到對應的樣例工程,點擊build選項進行編譯,并可在終端查看對應的編譯結果。
![build](//file1.elecfans.com/web2/M00/CD/E0/wKgZomYhKgmAHlVsAAII_kl0tMM036.jpg)
固件生成在對應工程目錄的out/hispark_taurus/smart_camera/目錄下。
![firm](//file1.elecfans.com/web2/M00/CD/E0/wKgZomYhKgmAVSfpAACATS5y4ZM629.jpg)
#### 燒錄/安裝
編譯完成后可以通過DevEco Device Tool進行燒錄,在燒錄前需要做一些燒錄的配置:
##### 配置準備
在配置燒錄前需要先查看DevEco Device Tool是否可以正常識別串口。
* 點擊左邊欄"REMOTE DEVELOPMENT",找到 并點擊” Local PC “ 選項。
* 查看 Local PC右邊圖標
如若圖標為![方型圖標](//file1.elecfans.com/web2/M00/C8/36/wKgaomYSm-6AacqFAAAAyP4i3c8105.jpg),則代表DevEco Device Tool已連接本地,可以正常識別串口。
如若圖標為![箭頭圖標](//file1.elecfans.com/web2/M00/C8/36/wKgaomYSm-6AcSn2AAABM8ZHpZc613.jpg),則代表DevEco Device Tool未連接本地,不能識別串口,此時需要點擊該綠色圖標進行連接,連接成功后圖標會變為![方型圖標](//file1.elecfans.com/web2/M00/C8/36/wKgaomYSm-6AacqFAAAAyP4i3c8105.jpg)。
![check local pc](//file1.elecfans.com/web2/M00/CD/E0/wKgZomYhKgmAMJeNAADZlR4r_l4731.jpg)
* 點擊主頁,在主頁選擇對應工程,點擊配置工程進入到配置頁面
![start config project](//file1.elecfans.com/web2/M00/CD/E0/wKgZomYhKgqAc5faAAI8QG3Tq6s612.jpg)
##### 配置串口
配置頁面選擇的板級配置頁面,在該頁面查找到燒錄選項,配置燒錄選項中的upload_port和upload_protocol,upload_port選擇開發板對應的串口號,upload_protocol默認選擇hiburn-usb,最后點擊右上角的保存按鈕進行保存。
![config searail](//file1.elecfans.com/web2/M00/CE/C0/wKgaomYhKgqAVqwlAAISm3kxsfw546.jpg)
##### 燒錄
* 當配置完串口以及固件后,直接點擊左邊欄工程管理中的upload即可啟動燒錄。
![burn](//file1.elecfans.com/web2/M00/C8/79/wKgaomYU6-yAPH9XAAA9xRC_EdA356.jpg)
* 在終端窗口顯示如下藍色提示信息時,在終端按下任意鍵繼續燒錄。
![continueburn](//file1.elecfans.com/web2/M00/C8/79/wKgaomYU6-yAPbBGAADe_Zd1pmw440.jpg)
* 在終端窗口顯示如下提示信息時,按住復位鍵,插拔USB線,最后松開復位鍵啟動燒錄。
![startburn](//file1.elecfans.com/web2/M00/C8/79/wKgaomYU6-yAW0C9AAGWb5x1VSQ145.jpg)
* 啟動燒錄后,界面提示如下信息時,表示燒錄成功。
![burnseccess](//file1.elecfans.com/web2/M00/C7/93/wKgZomYU6-yADPsDAAEabVCWDJg867.jpg)
##### 設備啟動
如果是第一次燒錄程序的話,單板在啟動的時候需要設置bootargs,否則不能正常啟動。單板第一次啟動會停在hisilicon界面:
![set bootargs](//file1.elecfans.com/web2/M00/C8/79/wKgaomYU6-yAM_3DAABg67BvIUo659.jpg)
我們需要輸入以下指令:
setenv bootcmd "mmc read 0x0 0x80000000 0x800 0x4800; go 0x80000000";
setenv bootargs "console=ttyAMA0,115200n8 root=emmc fstype=vfat rootaddr=10M rootsize=20M rw";
saveenv
reset
##### 打包應用
本demo是以安裝包的形式安裝到系統中啟動運行的。因此,在安裝應用前,需要將應用打包成安裝包。 將編譯好的libsmart_camera.so文件與工程目錄下的res以及config.json文件通過壓縮打包成zip格式(三個文件直接壓縮,不能壓縮文件夾),并將后綴名改為hap(smart_camera.hap)。
![hap file](//file1.elecfans.com/web2/M00/CD/E0/wKgZomYhKgqAG4UIAABdl0LyZCY199.jpg)
##### 掛載NFS
應用打包后,我們是通過NFS方式將單板掛載到本地,通過相關的指令來安裝的
![mount nfs](//file1.elecfans.com/web2/M00/C7/93/wKgZomYU6-yAcFyGAAAW4QLRaLQ315.jpg)
##### 安裝
通過nfs是單板連接到本地電腦后,我們可以通過bm安裝指令進行安裝。bm 安裝工具在系統編譯完后會自動生成,路徑在:
out/hispark_taurus/smart_camera/dev_tools/bin/
![bm](//file1.elecfans.com/web2/M00/CE/C0/wKgaomYhKgqATyYiAABvnoo-EY0618.jpg)
由于bm默認安裝的應用為已經簽名的應用,所以我們在安裝前需要先將簽名去掉。
bm set -s disable // 去簽名
bm install -p filename // 安裝應用filename, filename需要指定路徑
![bm install](//file1.elecfans.com/web2/M00/CE/C0/wKgaomYhKgqAZa3qAADfquLAiuA661.jpg)
安裝完后桌面會顯示對應應用的ICON,直接點擊ICON即可以啟動相機的應用。
#### 操作體驗
![大屏6](//file1.elecfans.com/web2/M00/CD/E0/wKgZomYhKgqAJdA6AAUrvAwFRxo750.jpg)
* 由于本demo涉及到攝像頭的讀寫,故需要申請了相關的權限。在使用本demo前需要在setting中打開對應的權限。具體操作:
? 點擊 setting-->應用-->smart_camera,然后將所有權限打開。
* 本demo帶有相機的所有功能,包含預覽,拍照,錄像以及跳轉到圖庫查看對應拍的圖片和錄制的視頻。
* 本demo最主要的功能是語音控制相機,需要對準板子上的mic風說喚醒詞,目前支持2個喚醒詞(Hi,xiaowen以及Nihao,wenwen),分別對應控制相機的拍照以及錄像功能。
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
照相機
+關注
關注
0文章
67瀏覽量
26715 -
鴻蒙
+關注
關注
55文章
1919瀏覽量
42197 -
OpenHarmony
+關注
關注
24文章
3442瀏覽量
15291
發布評論請先 登錄
相關推薦
OpenHarmony鴻蒙南向開發案例:【智能貓眼(基于Hi3518開發板)】
基于Hi3518開發板,使用開源OpenHarmony開發的RTSP協議流媒體應用。達到將Hi3518開發板中攝像頭獲取的數據通過RTSP協議傳輸到手機并顯示 。
OpenHarmony鴻蒙南向開發案例:【智能貓眼(基于3516開發板)】
基于Hi3516開發板,使用開源OpenHarmony開發的RTSP協議流媒體應用。達到將Hi3516開發板中攝像頭獲取的數據通過RTSP協議傳輸到手機并顯示 。
OpenHarmony南向開發案例:【智能風扇】
智能風扇設備不僅可以接收數字管家應用下發的指令來控制風扇開啟的時間,調節風扇擋位,更改風扇定時時間,而且還可以加入到數字管家的日程管理中。通過日程可以設定風扇相關的任務,使其在特定的時間段內,風扇自動打開或者關閉,調節擋位大小和定時時間;通過日程管家還可以實現風扇和其他的智能
OpenHarmony南向能力征集令
1、適配過程中缺少哪些接口能力或者南向能力,需要OpenHarmony去補齊的?例如內核、編譯、器件適配、單板適配等;
2、對標linux,需要OpenHarmony提供哪些能力?比如V4L2
發表于 04-09 15:32
OpenHarmony技術大會 | 硬件(南向)生態分論壇嘉賓金句
點擊藍字 ╳ 關注我們 開源項目 OpenHarmony 是每個人的 OpenHarmony 原文標題:OpenHarmony技術大會 | 硬件(南向)生態分論壇嘉賓金句 文章出處:【
基于STM32設計的門禁照相機
當前文章介紹基于STM32設計的門禁照相機,本項目提供了一種更加智能、安全、便捷的門禁解決方案。門禁照相機采用STM32F103ZET6 MCU作為主控芯片,配合2.8寸LCD顯示屏、OV7725數字攝像頭、SD卡和模擬門鈴按鍵
評論