1. 程式人生 > >複雜背景下的手勢識別應用於Android手機相簿

複雜背景下的手勢識別應用於Android手機相簿

採用了HOG+SVM的方法對4種手勢進行識別,

即採用梯度方向直方圖(histograms of oriented gradient,HOG)用於提取手勢特徵,

採用支援向量機(support vector machine, SVM)作為手勢的判據。

我們定義了四種手勢,

分別為:縮小圖片、放大圖片、向右翻閱圖片、向左翻閱圖片,

每個手勢的語義對照如圖1-4所示:


圖1 縮小圖片


圖2 放大圖片


圖3 向右翻閱圖片


圖4 向左翻閱圖片

軟體實現原理:從手機前置攝像頭讀取的影象中判斷出的手的語義再傳遞給手機相簿管理程式響應相應的命令。

手勢識別部分的程式碼使用Opencv 編寫

軟體演示視訊

原理詳解

相關推薦

複雜背景手勢識別用於Android手機相簿

採用了HOG+SVM的方法對4種手勢進行識別, 即採用梯度方向直方圖(histograms of oriented gradient,HOG)用於提取手勢特徵, 採用支援向量機(support vector machine, SVM)作為手勢的判據。 我們定義了四種手勢,

尋找複雜背景的物體輪廓 (從禾路的部落格園整理學習)

目錄 1.問題背景 2.解決思路 3.程式碼實現 4.相關資料 1.問題背景 由於拍攝時產生的陰影原因,所計算出來的物體輪廓並不完整。那麼有沒有方法檢測出物體的完整輪廓呢?             &n

尋找複雜背景物體的輪廓(OpenCV / C++ - Filling holes)

一、問題提出 這是一個來自"answerOpenCV"(http://answers.opencv.org/question/200422/opencv-c-filling-holes/)整編如下: title:OpenCV / C++ - Filling holes content:

尋找複雜背景物體的輪廓(OpenCV / C++

content: Hello there, For a personnel projet, I'm trying to detect object and there shadow. These are the result I have for now: Original:  題,原始問題 Object

Dagger 2用於Android的完美擴充套件庫-dagger.android

Dagger系列: 概述 在使用Dagger開發Android時,不可避免的一個問題是,許多Android的類都是由系統例項化的,比如Activity、Fragment等,如果使用Dagger依賴注入例項,我們不由得這麼寫: public cl

Window 系統安裝cordova (用於Android開發)

因為前段時間開發的Android專案要用到cordova與H5進行互動,翻查了不少網站,故此寫一遍部落格來鞏固一下。若有寫不好之處請勿噴,謝謝! Android開發的程式設計師,JDK與ADT以及SDK的環境配置就不需要介紹了,這些環境少不了!下面來講

Unity 開啟Android手機相簿和攝像頭

需求:要實現開啟手機的相簿和攝像頭,選擇照片或者拍照後,在unity進行。   1.android外掛 我使用的是AndroidStuido來寫外掛,下面是一步步介紹流程 (1)建立android工程 注意紅框裡面的東西,要修改兩個地方:

Android-自定義手勢識別-複雜手勢識別

一、概述 1、手勢互動過程(原理) (1)觸屏一剎那,觸發MotionEvent事件 (2)被OnTounchListener監聽,在onTouch()中獲得MotionEvent物件 (3)GestureDetector轉發MotionEvent物件至OnGestureL

Android 手勢識別—縮放

含義 -- sdn ret 面具 lap sea protect not 上一篇講解了手勢識別中的點擊和雙擊事件的識別,用到的是GestureDetector類和GestureDetectorCompat類,用於監聽用戶觸摸屏幕中的簡單動作。 縮放 基本用法如下

Android開發-手勢識別

使用OnTouchListener進行手勢識別 下面是例項程式碼 ImageView img; //對ImageView繫結觸控監聽 img.setOnTouchListener(new View.OnTouchListener() {

android系統 在jack-server 生成 jar 用於android app工程

android studio原來支援的jack-server 又過時了,但是android系統很多版本用的是jack-server編譯,也不太可能去修改,所以只能想辦法生成原始的jar來使用了。 android M:  在makefile中disable jack LOCAL_

android MVVM開發框架——(2)DataBinding 用於ListView

1,listview佈局 <?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/andro

linux使"adb devices"識別Android手機所需的配置

  sudo gedit /etc/udev/rules.d/51-android.rules SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666"(這行據說是通用的配置,我試過不加下面的“ATTR{idVendor}=="1782"”那行,就只用

用於Web的TWAIN掃描識別軟體-Dynamic Web TWAIN

Dynamic Web TWAIN 是專為Web應用程式設計的TWAIN掃描識別外掛。有了Dynamic Web TWAIN,你就可以在Web應用程式中任何相容TWAIN的裝置(如掃描器、數碼相機或採集卡)上獲取影象,並進行影象編輯,然後用TWAIN控制元件將圖片上傳至We

複雜背景的驗證碼識別破解 以Discuz的動畫驗證碼為例。

對於比較複雜的驗證碼,比如DZ論壇最新的驗證碼,處理起來相對麻煩一些,但是原理還是和普通的識別一樣的,無非多了個背景處理的方案,看如下對DZ論壇的驗證碼的識別的思路 首先我們要去除它的背景,對於這樣稍微複雜的背景,用過去的方法很難做到,上圖的例子還不是很明顯,我發現很多圖片背景色和字母色近似,而且字母顏色是

Android手勢識別 Camera 預覽介面上顯示文字 佈局注意事項(merge佈局)

通常在Surfaceview作為預覽視訊幀的載體,有時需在上面顯示提示文字。以前我弄的都好好的,今天忽然發現疊加的TextView不管咋弄都出不來文字了,跟Surfaceview一起放在FrameLayout也不行,後來想到merge佈局,發現也不行。大爺的,奇了怪了,最

Android 手勢識別(單擊 雙擊 擡起 短按 長按 滾動 滑動)

對於觸控式螢幕,其原生的訊息無非按下、擡起、移動這幾種,我們只需要簡單過載onTouch或者設定觸控偵聽器setOnTouchListener即可進行處理。不過,為了提高我們的APP的使用者體驗,有時候我們需要識別使用者的手勢,Android給我們提供的手勢識別工具Ge

Android手勢識別GestureDetector詳解

一、概述當用戶觸控式螢幕幕的時候,會產生許多手勢,例如down,up,scroll,filing等等。一般情況下,我們知道View類有個View.OnTouchListener內部介面,通過重寫他的onTouch(View v, MotionEvent event)方法,我們

Android ScaleGestureDetector縮放手勢識別

ScaleGestureDetector 在Android中對於手勢識別操作可以使用GestureDetector類來進行處理,對於縮放手勢,則提供了對應的ScaleGestureDetector類。 public class ScaleGesture

android開發之GestureDetector手勢識別(調節音量、亮度、快進和後退)

寫UI佈局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android