手勢識別演算法
㈠ 設計「手勢識別與跟蹤」這個課題,一般要用到什麼軟體matlab能實現嗎
現在關鍵的問題根本就不是開發軟體而是演算法和硬體環境搭建好么。。。
Matlab常用做演算法的模擬,當然也包括圖像和視頻處理的演算法。
C/C++下有免費開源的計算機視覺庫OpenCV,編程上的復雜度不會比matlab高很多。
當然上面討論的前提是你同時會用這兩種開發語言。
但是如果有特殊硬體的話matlab可能就不如C/C++好用了,我只是說一般情況。
你現在關鍵是要去查論文看人家的實驗環境和演算法,而不是關心演算法用什麼語言實現。
㈡ 如何寫一個簡單的手寫識別演算法
移動設備多用手勢進行輸入,用戶通過手指在屏幕上畫出一個特定符號,計算機識別出來後給予響應的反應,要比讓用戶點擊繁瑣的按鈕為直接和有趣,而如果為每種手勢編寫一段識別代碼的話是件得不償失的事情。如何設計一種通用的手勢識別演算法來完成上面的事情呢?
我們可以模仿筆記識別方法,實現一個簡單的筆畫識別模塊,流程如下:
第一步:手勢歸一化
手指按下時開始記錄軌跡點,每劃過一個新的點就記錄到手勢描述數組guesture中,直到手指離開屏幕。
2. 將gesture數組里每個點的x,y坐標最大值與最小值求出中上下左右的邊緣,求出該手勢路徑點的覆蓋面積。
3. 手勢坐標歸一化:以手勢中心點為原點,將gesture里頂點歸一化到-1<=x<=1, -1<=y<=1空間中。
4. 數組長度歸一化:將手勢路徑按照長度均勻劃分成32段,用共32個新頂點替換guestue里的老頂點。
第二步:手勢相似度
1. 手勢點乘:g1 * g2 = g1.x1*g2.x1 + g1.y1*g2.y1 + … + g1.x32*g2.x32 + g1.y32*g2.y32
2. 手勢相似:相似度(g1, g2)=g1*g2/sqrt(g1*g1 + g2*g2)
由此我們可以根據兩個手勢的相似度算成一個分數score。用戶輸入了一個手勢g,我們回合手勢樣本中的所有樣本g1-gn打一次相似度分數,然後求出相似度最大的那個樣本gm並且該分數大於某個特定閥值(比如0.8),即可以判斷用戶輸入g相似於手勢樣本 gm !
㈢ 手勢識別的課題誰做過我不會用HMM演算法
我做過。那是隱馬爾科夫,在語音識別中常用,可以從中國知網下論文看
㈣ 最近做圖像識別,想通過MATLAB做手勢識別的演算法,不知道需要學些什麼,做完會是什麼樣子,求大牛指導
模式識別、機器學習。
一般的做法是:
首先要有一定數量的手勢圖片;
其次將訓練用的手勢圖片進行人工分類,即「打上標簽」
再次將手勢圖片轉換成輪廓圖(可以用DFT、DCT、小波變換等計算出邊緣,然後對邊緣進行「擴張」即可);
第四是將輪廓圖規格化、矢量化,生成向量;
最後以上述向量集來訓練學習機(例如:神經網路),直到回歸;
獲得的結果是能進行手勢識別的學習機。
㈤ 基於語法動態手勢識別有哪些方法
手勢識別分為二維和三維手勢識別。
二維手勢識別基本只不會涉及深度信息,會為用戶解決最簡單基礎的手勢操作。
這種技術不僅可以識別手型,還可以識別一些簡單的二維手勢動作,比如對著攝像頭揮揮手、確定、點選及拖拽等基礎交互手勢。此類手勢識別技術雖然在硬體要求上和二維手型識別並無區別,但是得益於更加先進的計算機視覺演算法,可以獲得更加豐富的人機交互內容。在使用體驗上也提高了一個檔次,從純粹的狀態控制,變成了比較豐富的平面控制。
這種技術已經被集成到了電視里,像樂視TV等;也被做成了基於普通攝像頭的手勢識別技術,如國內英梅吉的HandCV手勢交互系統,可以安裝在手機/PC等設備中就可以實現手勢交互,同時也深度適配VR/AR環境;還有來自以色列的EyeSight,被中國一家企業投資2000萬美金,他們的手勢識別技術同樣也是做普通攝像頭,不同於國內的這家手勢識別,以色列這家多應用於生活場景,為懶人提供福利,不用觸摸手機直接隔空操作。
總的來說,二維的手勢識別相對來說更加入門級,可以為手勢識別提供從零到一的普及。
三維的手勢識別技術相對於二維的來說更精準、更深度,可以操作除了生活場景之外的一些游戲場景,面向一些發燒級玩家。提供的解決方案有結構光,微軟的KINECT;光飛時間TOF,根據光子飛行時間進而可以推算出光子飛行的距離,得到物體的深度信息;以及目前和暴風正在合作的leap
motion的多角成像技術,使用兩個或者兩個以上的攝像頭同時攝取圖像。
㈥ 什麼是手勢識別
在計算機科學中,手勢識別 是通過數學演算法來識別人類手勢的一個議題。手勢識別可以來自人的身體各部位的運動,但一般是指臉部和手的運動。
㈦ 如何用雷達實現手勢識別
如何用雷達實現手勢識別
雷達,英文Radar(Radio Detection And Ranging),利用發射「無線電磁波」得到反射波來探測目標物體的距離,角度,和瞬時速度。隨著天線尺寸和晶元的極度縮小,在可預見的未來,更多的雷達設備將會以微型器件面世,如圖所展示的那樣,它們不僅能嵌入可穿戴設備,成為物聯網的一類重要感測器。
圖 傳統的探測偵查雷達(左)以及Project Soli中用於手勢識別的迷你雷達(右)
相比於其它隔空操作技術,比如體感相機、超聲波等,雷達有著一些天然優勢:比如無論白天黑夜,暴曬寒風,皆可正常工作;在體積、成本,以及功耗上都比Kinect等體感相機來得要更低;高頻雷達測量物體距離通常可以精確到毫米級別;而低頻雷達則可以做到「穿牆而過」,完全無視遮擋物的存在。這些特性讓雷達,尤其是微型雷達,在未來都有著廣闊的應用前景。
雷達的組成
一般雷達由發射器、接收器、發射/接收天線、信號處理單元,以及終端設備組成。發射器通過發射天線將經過調頻或調幅的電磁波發射出去;部分電磁波觸碰物體後被反射回接收器,這就好比聲音碰到牆壁被反射回來一樣;信號處理單元分析接受到的信號並從中提取有用的信息諸如物體的距離、角度,以及行進速度;這些結果最終被實時地顯示在終端設備上。傳統的軍事雷達還常配有機械控制的旋轉裝置用以調整天線的朝向,而新型雷達則更多通過電子方式做調整。
為節省材料和空間,通常發射器和接收器可以共享同一個天線,方法是交替開關發射或接收器避免沖突。終端設備通常是一個可以顯示物體位置的屏幕,但在迷你雷達的應用中更多是將雷達提取的物理信息作為輸入信號傳送給諸如手錶或其它電子設備。信號處理單元才是雷達真正的創意和靈魂所在,主要利用數學物理分析以及計算機演算法對雷達信號作過濾、篩選,並計算出物體的方位。在這基礎之上,還可以利用前沿的機器學習演算法對捕捉的信號作體感手勢識別等等。
雷達實現手勢識別
雷達的測距或者測速都把物體想像成一個抽象的點。而真實的物體如手掌則可以認為是一堆三維點的集合體。所以在反射波中已然蘊藏了許多個點的距離與速度信號。同時呈現這些信息的一個好方法叫做距離-多普勒映射(Range-Dopler Map),簡稱RDM(如圖)。RDM中的橫軸是速度,縱軸是距離。它可以認為是一張反射波的能量分布圖或概率圖,每一個單元的數值都代表了反射波從某個特定距離和特定速度的物體得到的反射波能量。仔細看的話,從RDM中已然可以窺見探測物體的特徵身形!基於RDM及其時間序列, 我們可以採用機器學習的方法識別特定的能量模式變化,進而識別手勢及動作。在Soli推出之前,Nvidia也做過類似的研究。
圖 距離-多普勒(速度)映射的等高線表示示例 每一個單元值代表了反射波中具有對應距離和速度的點的集合的反射能量。該映射可以作為特徵向量用於機器學習識別手勢動作。
㈧ 除了攝像頭,還有沒有更好用的3D手勢識別方法
基於激光器應用的結構光和TOF,是比較好的3D收拾識別方法。
㈨ 【手勢識別】特徵或者樣本的多次訓練是什麼意思
根據不同的場景可以按照設定特定的時間間隔取得多張圖片,分別對每張圖像進行分析。
設計圖片處理可能會將圖片二值化(按照一個顏色的閥值將像素點轉化為0和1)
而對於不同的手勢,就會有不同的0和1組成的序列,這就是特徵值。
不管是因為光線、拍照等各種環境因素,每次相同手勢得到的特徵值總有差別,所以需要一個置信度(特徵值的相似度),相似度多少就認為可信由你自己的演算法決定。
為了提高識別度,就需要提高訓練次數(就是不停的提取相同手勢的特徵值),理論上說,訓練次數越多,識別准確率就會越高。
至於訓練多少次,也要有你實際演算法決定(訓練到你覺得識別成功率足夠實用就可)。
這里涉及圖像識別,具體資料請自行谷歌網路。