python訓練和識別手勢控制智能家居

2020-09-10 bfw愛編程

想像一下,您正在為一個摯愛的人舉辦生日派對。每個人都玩得很開心,音樂在演奏,聚會很吵。突然,該吃生日蛋糕了!如果只要舉手張開,您的智能家居設備會識別該手勢並關閉音樂,使用相同的手勢,您可以調暗燈光。那不是太神奇了嗎?先看看下面的效果。

好了,我們來用python來實現它吧。

▊操作步驟

▶實現思路

我們使用開源計算機視覺庫OpenCV,,該庫可以從屏幕上抓取圖像,然後調整圖像大小並將其轉換為模型可以理解的NumPy數組。我用來轉換數據的方法如下:

X_data = np.array(X_data, dtype = &39;)X_data = np.stack((X_data,) * 3, axis=-1)

簡而言之,一旦相機啟動並運行,您就可以抓取圖片,對其進行變換並從模型中進行預測:

uses webcam for videowhile camera.isOpened(): if spacebar pressed frame = np.stack((frame,)*3, axis=-1) frame = cv2.resize(frame, (224, 224)) frame = frame.reshape(1, 224, 224, 3) prediction, score = predict_image(frame)

▶提取手勢


我所採用的方法是所有與Photoshop一起玩過的人都熟悉的一種方法-背景扣除。這是一件美麗的事!本質上,如果您在手進入場景之前對場景進行拍照,則可以創建一個「遮罩」,該遮罩將刪除新圖像中除手之外的所有內容。

從圖像中減去背景後,便使用二進位閾值使目標手勢完全變為白色,而背景變為完全黑色。我之所以選擇這種方法,有兩個原因:一是使手的輪廓清晰明了,二是使模型更易於在具有不同膚色的用戶中推廣。這創造了具有說服力的「剪影」式照片,最終我對模型進行了訓練。

▶建立一個數據集

我從策略上選擇了同樣包含在Kaggle數據集中的4個手勢,因此以後可以針對這些圖像對模型進行交叉驗證。我還添加了和平標誌,儘管該手勢在Kaggle數據集中沒有類似物。

在這裡,我通過設置網絡攝像頭並在OpenCV中創建單擊綁定來捕獲和保存具有唯一文件名的圖像,從而構建了數據集。我試圖改變框架中手勢的位置和大小,以使我的模型更加健壯。我很快就建立了一個包含550個輪廓圖像的數據集。是的,您沒看錯-我拍攝了2700張圖像。

▶訓練新模型

然後,我使用Keras和TensorFlow構建了卷積神經網絡。我從出色的VGG-16預訓練模型開始,然後在頂部添加了4個dense層以及一個dropout層。

然後,我採取了非同尋常的步驟,選擇對我之前嘗試過的原始Kaggle數據集進行交叉驗證。這是關鍵-如果我的模型不能推廣到以前從未訓練過的其他人的手的圖像上,那麼它就不會比我的原始模型更好。

為了做到這一點,我對應用於訓練數據的每個Kaggle圖像應用了相同的變換-背景減法和二進位閾值。這給了他們我模型熟悉的類似「外觀」。



▶運行結果

該模型的性能超出了我的預期。它正確地對測試集中的每個手勢進行了分類,最終獲得了98%的分數以及98%的準確性和準確性分數。這是個好消息!

但是,正如經驗豐富的研究人員所知道的那樣,在實驗室中表現良好但在現實生活中表現不佳的模型並不值錢。最初的模型經歷了同樣的失敗後,我對這種模型在實時手勢操作中表現出謹慎的態度感到樂觀。

▶整合智能家居

在測試我的模型之前,我想添加另一點改進。我一直是個精明的家庭發燒友,我的願景一直是僅使用手勢來控制Sonos和Philips Hue燈。為了輕鬆訪問Philips Hue和Sonos API,我分別使用了phue和SoCo庫。它們都很簡單易用,如下所示:

39;192.168.0.103&39;transitiontime&39;on&39;bri&39;transitiontime&39;on&39;bri& Turn lights onb.set_light(6, on_command)39;192.168.0.104& Playsonos.play()39;Palm&34;Lights on, music on& turn off smart home actions if devices are not responding except ConnectionError: smart_home = False # etc. etc.

當我最終實時測試模型時,我對結果感到非常滿意。我的模型在大多數時間裡都能準確預測我的手勢,並且我能夠使用這些手勢來控制燈光和音樂。

好了,有什麼問題歡迎留言評論,關注我,每天分享一篇技術好文。

相關焦點

  • 基於手勢識別技術的智能電視遙控系統
    現今,不論是小小的智慧型手機終端還是大屏幕設備都可採用觸屏技術,使人們擺脫了繁瑣的鍵盤輸入和滑鼠控制。未來,人機互動的理想狀態可通過語言、手勢、表情等自然操作設備,而這些功能已在多種領域嘗試和應用,其功能優化和發展依賴於手勢識別等技術的發展。就目前的形勢來看,智能家居是未來生活的一種發展趨勢,不僅是年輕一代,在中年老年人間也愈來愈受歡迎。
  • 手勢識別與控制 | 疫情下的「無接觸」模式
    手勢識別是近年來大熱的人機互動方式,由於操作方便、功能酷炫,在智能家居、智能穿戴設備、VR/AR等領域都增加了手勢識別的控制功能。手勢控制作為無接觸智能交互產品的控制方式之一,貼合當下社會發展需求被廣泛應用於多重領域。而疫情下悄然流行的「無接觸」模式,推動著手勢識別控制技術的普及。手勢識別可分為基於可穿戴設備的識別和基於計算機視覺的識別。
  • 人臉識別、手勢控制……兩江新區企業重慶雙芯科技攜智能晶片參展...
    人臉識別、手勢控制……兩江新區企業重慶雙芯科技攜智能晶片參展2020線上智博會 2020年09月14日 17:39 兩江新區官網  閱讀量:
  • WiFi實現手勢識別 揮揮手就能控制家電
    而這些設備一般只能在傳感器所在的範圍感知我們的手勢動作。另外,也有通過用戶隨身攜帶傳感器來解決這個問題的方案。但現在,華盛頓大學的計算機專家們剛剛研發的一款設備打破這種限制。他們的技術是採用改進的WiFi路由器來識別手勢——隨便你是在家裡的任何位置,只要有WiFi信號,設備就能檢測到你的手勢。
  • 宜家出了新的智能家居產品,手勢控制的燈
    最近,宜家推出了新的智能家居產品線 ——無線智能家居燈。宜家將這一系列的家居照明產品線命名為 Trdfri ,在瑞典語中意為「無線」。它支持 Zigbee Light Link(zigbee 燈光連接標準)這套網絡協議。
  • AI下的手部跟蹤和手勢識別
    在你的智能電視旁邊揮一揮手,就可以打開今天的天氣預報。在智能手錶旁邊輕敲一下,然後在孩子的臥室裡設置一下鬧鐘。僅通過打手勢就能把事情做好該有多好?這不再是不現實的:手勢跟蹤和手勢識別技術正在滲透到多個行業。但我們真的需要這樣的能力嗎?實時手勢識別(HGR)的真正價值是什麼?
  • 智能家居系統的七大控制方式,你知道幾個?
    像智能門鎖、智能魔鏡、智能窗簾、智能路由、智能網關、智能插座、智能燈泡等智能設備,被人們廣泛運用。家中的智能產品越來越多,但智能家居系統的七大控制方式,你知道幾個?像智能門鎖、智能魔鏡、智能窗簾、智能路由、智能網關、智能插座、智能燈泡等智能設備,被人們廣泛運用。家中的智能產品越來越多,但智能家居系統的七大控制方式,你知道幾個?
  • 智能家居系統中七大控制方式,你知道幾個?
    在智能家居愈加普及的今天,智能門鎖、智能魔鏡、智能窗簾、智能路由、智能網關、智能插座、智能燈泡等等智能設備四處開花,悄然進入我們的生活。但是,家中的智能產品越來越多,到底哪種才是對話智能家居的正確方式呢?
  • 人臉識別、手勢控制……兩江新區企業重慶雙芯科技攜智能晶片參展2020線上智博會
    2020年線上中國國際智能產業博覽會將於9月15—17日在重慶舉辦。屆時,落戶兩江新區金泰智能產業園的重慶雙芯科技有限公司(簡稱「重慶雙芯科技」)將展出人臉識別、手勢控制等智能場景。智博會期間,重慶雙芯科技將展出PLus1 SP7021的幾大應用場景,包括人臉識別、手勢控制、物體辨識以及工業控制
  • 手勢識別:python+opencv代碼講解和效果
    1 說明=====1.1 環境:python3.8+opnecv4.4.01.2 gesture recognition(手勢識別),好東西就需要分享。1.3 代碼來源:感謝原作者,但是有bug,作者不想給「伸手黨」[笑哭];還是感謝原作者,因為我要公開了,僅供學習。
  • 手勢識別了解一下
    隨著科技的高速發展,這種隔空指令的手勢識別技術已經在智能家居、直播、汽車駕駛等場景逐步走向普及,成為人機互動的新方式。/ 智能家居手勢識別觸發指令目前常見的手勢操作有拳頭、OK、比心、作揖、作別、祈禱、點讚、Diss、Rock
  • 谷歌新款Nest恆溫器 或支持Soli傳感器和手勢控制
    谷歌新款Nest恆溫器 或支持Soli傳感器和手勢控制2020-09-12 13:20出處/作者:cnBeta.COM整合編輯:佚名責任編輯:zhaoyongyu1   美國聯邦通訊委員會剛剛曝光了一款谷歌的新款 Nest 恆溫器,表明它可能配備支持手勢控制的 Soli 傳感器。
  • 汽車控制新方式:手勢識別和虛擬觸屏
    其中車載手勢感應技術便是當前最流行的汽車技術之一。目前,世界各大汽車生產廠商都在競相研究汽車手勢控制系統,通過此系統駕駛員可以通過手勢來控制汽車,而無需分心。相信這種極具未來感的汽車技術將在未來幾年內上市應用。
  • 谷歌等巨頭布局手勢識別市場 未來或將取代觸控螢幕
    上周最新披露的一項專利顯示,谷歌正在研究利用空間感知和手勢控制來操控各類設備,以取代觸控螢幕地位。業內認為,手勢識別無疑是VR/AR設備最好的交互方式,目前手勢識別技術在VR上已初步實現。
  • 蘋果獲得智能手錶新專利,涵蓋指紋識別、手勢控制等,華為加油
    PatentlyApple發現,蘋果的這項專利涵蓋健康功能、手勢控制等,蘋果公司最近才獲得這項專利,但早在2019年初就提交了申請。Apple Watch未來可能具有的功能該專利顯示的一項最重要的安全功能是Touch ID,該技術已在iPhone和iPad中使用。在Apple Watch上使用此功能後,在查看個人數據之前可能需要進行指紋驗證。
  • 光暈網絡科技發布黑科技:手勢識別、AR導航、語音控制
    日前,交互技術創新團隊——光暈網絡科技在京發布了其品牌及新品,首次對外發布了光暈Halo品牌、獨立自主研發的手勢識別及AR導航技術,以及搭載「手勢識別、AR導航、語音控制」三位一體交互技術解決方案的光暈Halo HUD後裝車載抬頭顯示器智能硬體產品。
  • 前火狐團隊推出智能家居樞紐 Sense,主打自動化、智能識別與安全 |...
    昨天 Sony 在 WMC 大會上發布了一款正在研發中的智能家居控制終端 —— Xperia Agent,旨在讓智能家居的控制變得更個性化,連接人與物。 在做這件事情的當然不只有 Sony 一家,更早之前我們報導了亞馬遜推出的語音控制助手 Echo,而今天前火狐團隊推出的這款 Sense 似乎更勝一籌,讓我們看到了能實現 Workflow 的智能家居樞紐。
  • 安吉星手勢控制APP全球首發
    安吉星手勢控制APP全球首發    雪佛蘭和安吉星這次聯合推出了一款手勢控制APP應用,雖然小,但也算是全球首秀。  之前我們所了解到的手勢控制大多是基於車機屏幕的,  安吉星的這個手勢控制是基於手機APP和智能手錶的結合。
  • FCC曝光谷歌新款Nest恆溫器 或支持Soli傳感器和手勢控制
    美國聯邦通訊委員會剛剛曝光了一款谷歌的新款 Nest 恆溫器,表明它可能配備支持手勢控制的 Soli 傳感器。儘管距離谷歌上次更新 Nest 恆溫器產品線已經過去了數年,但在此期間,智能家居設備市場的競爭還是不斷湧現。比如通過聯網和機器學習等技術,系統可以學習家庭行為和模式、之後主動調節室內溫度,以及通過手機 App / 智能揚聲器進行遠程控制。
  • 家庭住宅智能安防,智能家居控制系統該如何控制
    北京 太川科技導讀:隨著生活方式的改變,智能家居控制系統也是在不斷的融入到人們的生活當中同時也在和智慧社區住宅平臺不斷結合,智能家居從一開始的簡單的智能化控制到現在多方面的系統控制管理,在安防方面更多的新的技術在更新迭代,滿足人們家庭住宅的安防需求。