為了更好的完成工程實踐,在專案的初始階段需要對其進行需求分析與概念原型的設計,從而可以對後續工作定下明確的方向,本文從需求分析、業務領域建模、資料模型和概念原型等幾個方面,基於我的工程實踐專案——手勢識別系統,進行乙個簡要的實踐分析。
我的工程實踐專案是乙個手勢識別系統,根據以往的文獻來看,該項目的實現有多種技術路線,在手勢的檢測與分割上,一種是利用單目攝像頭提取二維手勢影象,在利用顏色空間進行乙個手勢的分割,提取出要識別的目標手勢;另一種則是利用深度相機獲取深度手勢影象,利用一些現有的庫函式來進行手勢的分割與提取。至於手勢的識別,主要分為模板匹配、狀態圖轉移、統計學習、神經網路等幾種方法。
而我對該專案既定的技術路線是:利用kinect攝像頭來獲取手勢的深度影象,利用opencv來對手勢進行乙個分割,提取出手勢影象,最後選擇模板匹配的方法,將手勢的特徵與訓練的模板進行乙個匹配,從而識別出手勢的內容。
原型化方法和建模的方法是整理需求的兩類基本方法。原型化方法可以很好地整理出使用者介面方式,比如介面布局和互動操作過程。建模的方法可以快速給出有關事件發生順序或活動同步約束的問題,能夠在邏輯上形成模型了整頓繁雜的需求細節。
上述需求中,第
三、四兩條沒有與使用者互動,沒有畫出其對應的用例圖如下:
業務領域建模的基本步驟如下:
通過上一階段的分析,該系統應該具有gui類、users類、gestures類,template類等四個類,在使用者互動介面,用過有登入、開始、退出等控制按鈕;在使用者類中,使用者應該可以利用gui控制系統進行操作,與手勢類進行互動,從而獲取手勢;在手勢類中,應該包括進行手勢檢測與分割的方法、手勢特徵提取的方法;在模板類中,應包括訓練得到的手勢模板,並且應具有手勢匹配的方法。其uml類圖如下:
1)使用者表
序號變數名
型別描述1id
string
使用者名稱2
gesture
gesture
手勢2)手勢表
序號變數名
型別描述
1gesturetype
string
手勢型別
2gesture_id
string
手勢id
概念是人對能代表某種事物或發展過程的特點及意義所形成的思維結論。概念原型是一種虛擬的、理想化的軟體產品形式。
概念原型 = 用例 + 資料模型
該項目的工作過程如下:
首先,使用者通過圖形化介面登入進系統,開始使用手勢識別系統;接著,使用者做出手勢,通過深度攝像機進行手勢的收集;然後,利用系統將手勢進行分割和提取;最後,利用手勢識別演算法,進行匹配,得出手勢的型別。
通過本文,我對用例建模、業務領域建模和資料建模有了更深的理解,也對工程實踐專案有了更明確的目標,為以後再進行專案的開發打下了基礎。
需求分析 識別系統需求中的三類事件
在前面的課程中,我們了解了什麼是事件?事件是可以描述的 值得記錄的在某一特定時間和地點發生的事情,當事件發生時,系統要做出響應。系統可能會響應外部發生的事件,也可能會響應在系統內部發生的事件,也可能在指定的時間段系統要做出響應。我們把系統響應外部發生的事件稱為外部事件 把系統響應內部發生的事件稱為狀...
由簡單的目標識別系統談需求分析
由於本人的工程實踐專案是nlp分詞演算法,所以沒有辦法很好的做需求分析。我虛構了乙個簡單的深度學習專案,可以更好地學習和把握 以建模的方法掌握需求分析的過程。比如ai識別的系統,如植物分類的識別系統。簡單地說。當使用者上傳,系統會顯示這種植物屬於什麼類別。由課上我已經知道,需求分析有兩種基本方法,分...
基於MATLAB GUI的指紋識別系統
指紋識別的第一步是指紋圖像的獲取,目前已經有多種指紋圖像的獲取方式,主要有光學指紋採集技術 電容式感測器指紋採集 溫度感測指紋獲取技術 超聲波指紋採集技術 電磁波指紋採集技術,獲得影象後進行預處理加工,要實現影象的灰度變換 分割 均衡化 增強 細化等預處理步驟。首先要把指紋從整個圖案上分割出來,背景...