精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何利用樹莓派的手勢控制全息音頻可視化器

科技觀察員 ? 來源:Hacker Shack ? 作者:Hacker Shack ? 2022-04-08 17:46 ? 次閱讀

一個帶有手勢控制的 3D 全息音頻可視化器絕對可以為您的生活增添趣味并給您的朋友留下深刻印象。該顯示器將來自監視器的圖像向下投射到丙烯酸金字塔或“平截頭體”上,然后創建 3D 效果。具有音頻可視化器,可實時響應從 SoundCloud 播放列表播放的音樂。顯示器還有一個手勢控制接口板,可以在不被觸摸的情況下檢測各種手部動作。這意味著在空中比劃或轉動您的手將可以控制播放下一首歌曲、暫停、調整音量、切換可視化器以及其他很酷的功能。

當然,這個項目最方便的是所需的電子硬件非常少,而且我們已經為您編寫了代碼。您只需要設置軟件并構建一個框架即可將它們組合在一起。

構建頂部框架

首先,我們構建了框架的頂部,用于放置投影圖像的監視器。我們使用了一個 24 英寸屏幕的電腦顯示器,整體尺寸約為 13.38 英寸 x 21.88 英寸。您可能需要根據顯示器的大小調整框架的大小。

頂部框架只是一個矩形,框架內側有一個唇緣,用于放置顯示器的邊緣。我們使用 1.5“ x 0.5” 木材制作框架,并使用 0.75“ x 0.75” 木材作為內唇。

poYBAGJQBE6ACiLZAASlHlBvEGc379.png

使用手鉆,我們使用兩個 #6 木螺釘一次將內唇連接到框架上,然后將這些組合件中的每一個排列成一個矩形,并通過將末端擰在一起將它們組裝在一起。

pYYBAGJQBEqAflfDAAK879TOlI4559.png

構建底部框架

底部框架類似于頂部框架,除了沒有內唇。我們使用 1 英寸 x 2 英寸(實際上是 1.5 英寸 x 0.75 英寸)的木板制作了底部框架,其外部尺寸與頂部框架相同。盡管外部尺寸相同,但由于木板的厚度不同,碎片的長度略有不同。我們將這些部件排列成一個矩形并將它們擰在一起,如下圖所示:

poYBAGJQBEaAMdqZAAMLKHzg_Cc334.png

然后我們將兩個額外的垂直部件擰到底部框架的背面。這些部件是支撐頂部框架的柱子。這件作品的高度也將取決于您的顯示器尺寸,因為我們要制作的亞克力截頭體以 45 度角從頂部框架延伸到底部框架,并且您的顯示器將不再投射到截頭體的某些部分上,如果它太高太寬的話。

pYYBAGJQBEKAKmK6AAQJSwxmKXk957.png

當然,如果它只是未完成的木頭,組裝看起來不會很好。在將頂部和底部框架連接在一起之前,我們用一些黑色的半光澤噴漆噴涂它。

pYYBAGJQBD6AYbjwAAPR54QoO9g598.png

切割亞克力平截頭體

制作截錐體是構建中更具挑戰性的部分之一。平截頭體是三塊亞克力板組合在一起形成一個具有 45 度坡度的三邊金字塔。這被稱為截錐體。

我們必須對亞克力板進行評分并將其折斷到精確的尺寸。如果處理不當,亞克力板可能會以意想不到的方式斷裂,邊緣可能不直,截頭錐體可能無法很好地結合在一起。尺寸也高度依賴于您的顯示器尺寸。

如果不構建 3D 模型來獲得所需的確切尺寸的話,則尺寸也很難確定。我們建議在您的計算機上對其進行建模,或者構建一個紙板模型以確保它能夠正確組合在一起。

用鋼筆或記號筆在亞克力板上盡量精確的描出形狀。然后,使用評分工具對丙烯酸進行 20-50 次評分。使用直尺(如長木頭)引導您的評分工具筆直。最好將導向直尺放置在您要切割的零件的一側,以防止刻痕工具無意中偏離預期路徑并越過工件表面。

poYBAGJQBDeATkblAAPjix43RXA829.png

poYBAGJQBDSAa_qOAANtHB40hMw000.png

pYYBAGJQBDCAWDZFAARDD7jAo-Q982.png

組裝

現在大部分零件都制作好了,我們可以開始組裝設備了。因為框架頂部會有一個很重的顯示器,所以我們 3D 打印了一些支架放在角落里。我們附上了 3D 文件供您打印,但您也可以從五金店獲得支架。

poYBAGJQBCyAafwbAARKXoIgNPQ129.png

首先我們需要使用一些黑色 PVC 板或其他類似材料覆蓋組件的底部和背面。它們還通過阻擋光線并為全息圖創建深色背景來增加 3D 全息效果。我們使用美工刀切出一些 0.118 英寸的 PVC 板。

poYBAGJQBCiAA_udAAOKKIu-QmY371.png

我們還需要更多的 3D 打印部件來完成其余的構建。附加了 3D .stl 文件。如果您沒有自己的 3D 打印機,請嘗試您的大學或當地圖書館借用。還有一些在線服務可以接受 .stl 文件,并且可以打印并將零件郵寄給您。

pYYBAGJQBCWAf2GCAAPfh9ID9Sc359.png

在頂部框架的中心,我們連接了一個 3D 打印的平截頭體關節,以適當的角度將三塊亞克力固定在一起。我們還使用了一些 3D 打印支架將顯示器固定在頂部框架中并將其居中。

pYYBAGJQBB-ASL6DAAOH7W61wZk689.png

最后,我們現在準備組裝截錐體。將三塊丙烯酸滑入平截頭體接頭的槽中。

poYBAGJQBBuAIlzUAAKzxKpiB8E129.png

接下來,我們要構建全息顯示的手勢控制界面。我們的 3D 打印機不夠大,無法將控制接口外殼打印成一體,因此我們不得不將其分成四部分。只需將 Flick 手勢控制板擰入外殼,將其連接到 Raspberry Pi,然后將 Pi 塞入外殼內。然后將其擰入底部全息顯示框架的前部。將 HDMI 電纜從 Pi 連接到顯示器,然后將電源插入 Pi 和顯示器。

pYYBAGJQBBeAdmGZAAK3iOG2hk4149.png

運行代碼

該項目在兩個不同的設備上運行。Raspberry Pi 控制 Flick 手勢識別板,該板將命令發送到運行在更強大的 Mac/Windows/Linux 計算機上的可視化器,支持 webGL 以運行圖形。

首先,請確保在要運行可視化工具的計算機和 Raspberry Pi 上下載此存儲庫。

展示臺

可視化器必須在普通計算機上運行,??因為 3d 可視化器動畫滯后于 Raspberry Pi。可視化動畫在Electron環境中運行,并使用 Three.js(一個 WebGL 庫)制作 3d 圖形。運行 Node.js 的服務器允許與手勢板通信

首先在您的計算機上安裝最新的穩定版本的Node.js。我使用的是 6.x 版本。接下來,導航到存儲庫目錄并運行sudo npm install以安裝項目的依賴項。

使用以下命令啟動可視化器:

npm start

可以通過修改文件const playlist = ‘path/to/playlist’; 中的 const來更改 Soundcloud 播放列表renderer.js 。可以通過提取 Soundcloud 播放列表的 url 結尾來找到該路徑。例如,如果播放列表的 url 是:

https://soundcloud.com/someartist/sets/aplaylist

常量:

const playlist = ‘someartist/sets/aplaylist’;

控件

首先,確保在 Raspberry Pi 上為 Flick 手勢板安裝了必要的依賴項。首先在終端中運行以下命令:

curl -sSL https://pisupp.ly/flickcode | sudo bash

確保重新啟動您的 Pi,然后在終端中運行以下命令來測試您的 Flick 板。在測試之前,您需要確保其接線正確。

flick-demo

該項目的控制部分在帶有 python 程序的 Raspberry Pi 上運行。您需要確保您的 Raspberry Pi 使用 python 2.7,以便程序正常運行。您可以通過運行以下命令檢查系統上運行的 python 版本:

python --version

導航到存儲庫目錄中的控制文件夾并執行以下命令以安裝所有依賴項:

sudo pip install -r requirements.txt

在運行控制程序之前,通過將 變量的 一部分swipe-controller.py 替換為運行可視化器的計算機的本地 IP 來修改文件。《HOST_IP》host = ‘http://《HOST_IP》:3000’

注意:兩臺計算機必須在同一個網絡上。您可以通過在終端中鍵入(在 windows 上) 并查找 inet 地址來找到您計算機的 IP 地址。 ifconfig ipconfig /all

運行程序:

python swipe-controller.py

當兩個程序都運行后,就可以對其進行測試了!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 顯示器
    +關注

    關注

    21

    文章

    4945

    瀏覽量

    139818
  • 樹莓派
    +關注

    關注

    116

    文章

    1698

    瀏覽量

    105524
收藏 人收藏

    評論

    相關推薦

    請教利用樹莓制作六足機器人的問題

    利用arduino實現對樹莓和舵機控制器控制利用樹莓
    發表于 11-10 15:33

    可視化MES系統軟件

    進行篩選、分析和控制,因此,利用可視化技術將其轉化為圖表、圖像和表格等形式展示,便于管理者有效分析、控制和管理。(2)可視化交互方面。車間的
    發表于 11-30 19:55

    采用MATLAB設計下的可視化控制

    1、前言:MATLAB下機器人可視化控制---simulink篇(1)主要內容:是利用smimport('YourRobot.urdf');函數將含有機器人文件的機器人導入到MATLAB中,并集合
    發表于 05-21 09:38

    如何把AD中非可視化區域物件移到可視化區域?

    AD中非可視化區域物件怎么移到可視化區域???
    發表于 09-10 05:36

    Python數據可視化

    Python數據可視化:網易云音樂歌單
    發表于 07-19 08:30

    常見的幾種可視化介紹

    說說常見的幾種可視化一、信息可視化信息可視化就是對抽象數據進行直觀視覺呈現的研究,抽象數據既包含數值數據,也包含非數值數據如文本信息、地圖信息等,它們可通過利用圖形圖像處理、人機交互、
    發表于 07-12 07:49

    如何利用樹莓控制步進電機?

    如何利用樹莓控制步進電機?
    發表于 10-27 07:13

    經驗分享|BI數據可視化報表布局——容器

    。大家可以根據自己的情況去選擇開啟或繼續關閉。需要注意的是,瀏覽該開關的效果需要點擊頁面右上角【瀏覽】,進入瀏覽頁面后才可以體驗。容器的使用可以有效提高布局排版的效率、有效利用率,是一種常見奧威BI軟件的數據可視化布局排版功能。操作也極為簡單,只需點擊即可生效!
    發表于 03-15 17:10

    樹莓密碼忘了怎么辦

    如果你有顯示屏或者能夠通過teamviewer遠程到樹莓可視化界面的話,直接利用realvnc選擇密碼類型或者更改密碼,樹莓
    的頭像 發表于 03-25 17:52 ?1.9w次閱讀

    具有顏色選擇的音頻頻譜可視化

    電子發燒友網站提供《具有顏色選擇的音頻頻譜可視化.zip》資料免費下載
    發表于 11-04 09:42 ?1次下載
    具有顏色選擇的<b class='flag-5'>音頻</b>頻譜<b class='flag-5'>可視化</b><b class='flag-5'>器</b>

    TensorFlow手勢識別樹莓開源

    電子發燒友網站提供《TensorFlow手勢識別樹莓開源.zip》資料免費下載
    發表于 11-09 09:27 ?1次下載
    TensorFlow<b class='flag-5'>手勢</b>識別<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>開源

    使用Raspberry Pi的音頻可視化

    電子發燒友網站提供《使用Raspberry Pi的音頻可視化.zip》資料免費下載
    發表于 11-11 09:58 ?1次下載
    使用Raspberry Pi的<b class='flag-5'>音頻</b><b class='flag-5'>可視化</b><b class='flag-5'>器</b>

    基于樹莓音頻頻譜圖可視化設備

    方案介紹使用 Raspberry Pi Pico、數字麥克風和 LCD 顯示創建實時音頻頻譜圖可視化。本項目將介紹如何使用帶有外部數字麥克風和 TFT LCD 顯示屏的Raspbe
    發表于 12-23 10:51 ?3次下載

    樹莓音頻視頻播放

    樹莓音頻視頻播放
    的頭像 發表于 06-21 11:41 ?598次閱讀

    使用樹莓Pico開發板制作實時音頻光譜圖可視化

    本期教程將會通過使用一塊帶有外置數字麥克風和 TFT LCD 顯示屏的樹莓 Pico 開發板制作一個實時音頻光譜圖可視化。有了它,你就可
    的頭像 發表于 10-24 10:49 ?1872次閱讀
    使用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>Pico開發板制作實時<b class='flag-5'>音頻</b>光譜圖<b class='flag-5'>可視化</b><b class='flag-5'>器</b>