2011年7月10日 星期日

0706~0710 Kinect研究


圖1.Kinect 硬體設備(圖片來源:Games Blog

                         1.中間的鏡頭是攝影機

                         2.左右兩顆鏡頭則是3D深度感應器

                         3.底座馬達可上下轉各27度

                         4.陣列式麥克風




圖2.功能圖(圖片來源:PrimeSense

Kinect可同時獲取彩色影像、3D深度影像、以及聲音訊號(引
用PrimeSensor解說圖)

    微軟與另一家以色列公司PrimeSense合作
(來源:gossipgamers),讓Kinect使用的3D偵測技術有了著
落。他們也是提供動作感測系統的公司,擁有體感偵測裝置PrimeSensor,以及感測晶片PS1080。PrimeSense用的並
不是採用3DV Systems的TOF技術、而是Light Coding技術。

    Light Coding技術理論是利用連續光(近紅外線)對測量空間
進行編碼,經感應器讀取編碼的光線,交由晶片運算進行解碼
後,產生成一張具有深度的圖像。Light Coding技術的關鍵是
Laser Speckle雷射光散斑,當雷射光照射到粗糙物體、或是穿
透毛玻璃後,會形成隨機的反射斑點,稱之為散斑。散斑具有
高度隨機性,也會隨著距離而變換圖案,空間中任何兩處的散
斑都會是不同的圖案,等於是將整個空間加上了標記,所以任
何物體進入該空間、以及移動時,都可確切紀錄物體的位置。
Light Coding發出雷射光對測量空間進行編碼,就是指產生散
斑。

    Kinect就是以紅外線發出人眼看不見的class 1雷射光,透
過鏡頭前的diffuser(光柵、擴散片)將雷射光均勻分佈投射
在測量空間中,再透過紅外線攝影機記錄下空間中的每個散
斑,擷取原始資料後,再透過晶片計算成具有3D深度的圖像。



圖3.骨架圖(圖片來源:blog

       微軟會將偵測到的3D深度圖像,轉換到骨架追蹤系統。該系統最多可同時偵測到6個人,包含同時辨識2個人的動作;每個人共可記錄20組細節,包含軀幹、四肢以及手指等都是追蹤的範圍,達成全身體感操作。為了看懂使用者的動作,微軟也用上機器學習技術(machine learning),建立出龐大的圖像資料庫,形成智慧辨識能力,盡可能理解使用者的肢體動作所代表的涵義。

    Kinect偵測的最佳距離為1.2公尺到3.5公尺間,水平視野則是57度,偵測範圍似乎比原本想像的還要小,看來還是不能站的太隨意;Kinec也配備了追焦系統,如果玩家超出影像範圍,底座馬達可驅動Kinect上下旋轉27度。


                  
圖4.介面

程式碼部分,我參考了微軟的SDK範例,不過上面寫的只有部分程式碼,若要使範例能正常編譯且執行,還需要從cm-bloggers上面抓起一些程式碼。研究了微軟範例3天左右,因為上面寫的不是很清楚,比方說:沒有寫使用哪些物件、函式沒給...等等,所以我將函式名稱Google一下,意外發現cm-bloggers這個部落格,上面的程式碼較為完善,也因為這樣,我才能將Kinect的影像訊息顯示出來。 


以下三張照片,是在非常巧合的情況下拍攝的,因為要kinect顯示骨架的話,人必須在鏡頭前1.2公尺左右才會顯示,正當我在煩惱要如何拍骨架圖和拍照時,一位帥氣的學長走了過來看我寫的程式時,程式偵測到骨架的那一瞬間,我就按下拍照了。
圖5.視訊圖

圖6.深層圖

圖7.骨架圖

以上三張照片,都是同一個人,只是輸入和輸出的各有不同的技術,才會造成不同圖案顯示。


圖8.更新頻率

        由於Kinect攝影機的影像更新頻率為30FPS,代表動作傳遞將會有33ms(1/30秒)的延遲,CrunchGear也在文中質疑這會不會造成動作偵測上的延遲,為何不使用60FPS以上的錄影規格拍攝?這其實是PrimeSense公司提供的處理晶片能耐,它就只能處理VGA畫質、30FPS的影像。
        30FPS影像更新頻率造成的延遲應該有限,因為人類對事物的反應速度幾乎都超過100ms,已經大於30FPS所帶來的33ms延遲。比起偵測延遲,更該擔心的是辨識需要的時間、以及辨識的精準度。由於Kinect是透過辨識圖像再轉化為指令的方式,大量的影像處理、以及事後的辨識動作,恐怕才是讓Kinect使用者感受到延遲的原因。



                                 
圖9.深層加骨架

這是我想玩玩看,如果鏡頭不一樣,那我將兩張圖重疊,位置會不會一樣呢?實驗顯示,會一樣的。



圖10.馬達控制

        在前文中有提到馬達可上下轉動各27度,我是使用Button控制,本來想讓馬達一直轉動,但是...看到下面這段原文:
To adjust the camera tilt, set the ElevationAngle property of the Camera object to a value between –27 (Camera.ElevationMinimum) and +27 (Camera.ElevationMaximum). However, the tilt mechanism in the sensor array is not designed for frequent use. Code should not make calls to the tilt device more than 15 times in any two-minute window. Changing the tilt too often will result in an error message.
似乎說著馬達不適合頻繁轉動,所以我就做罷,必要時再動馬達就好。


這一個星期剛接觸Kinect,本來以為可以很快的就將其功能寫出來,未料範例程式有缺函式和剛接觸C# WPF專案,導致需花一段時間研究環境,不過還好有開竅,才得以照範例寫出來。


參考資料:














2011年7月6日 星期三

Kinect相關資料(0706~0710 )



<圖一>Kinect

<圖二>精障者工作及時行為分析與工作系統提醒架構



加油站工作:

1.      鈔票辨識à辨識顏色。
2.      判別加油員加完油後,是否有收錢?à動作判定à骨架追蹤。
3.      調視野及角度à控制馬達。

考慮需要用到SDK以下功能:
1.骨骼跟踪
跟踪能力的骨架圖像的一個或兩個人在移動 Kinect的視野可以很容易地創建手勢驅動的應用程序。
2.示例代碼和文檔
SDK包括超過 100頁的技術文檔,除了內置的幫助文件,文件包括詳細的演練對於大多數樣品提供了SDK
3.安裝方便:
SDK安裝快捷,無需複雜的配置,以及完整的安裝程序大小小於100 MB

以下是找到相關運:
(一)環境配置:
KinectSDK包含KINECTPC的驅動程式,可以直接下載安裝,下列網址有教我們如何操作並測試是否安裝成功。


(二)操作Camera:
Kinect一共有三個Camera,其中中間的一個是RGB Camera,我們是打算利用RGB Camera來作辨識鈔票這部分,用RGB Camera來判別千元鈔與百元鈔的不同顏色,RGB Camera還可獲取640x480的彩色圖像,每秒鐘最多獲取30幅圖像,用來判定學員當下的情況或拿來當作為觀察加油站內情況都是不錯的功用Camera的特色還不只如此,兩側是兩個景深(3D Depth)傳感器,用來檢測員工們的相對位置。


(三)骨骼追踪:
至於學員動作的判定,是打算利用Skeleton Tracking(骨骼追踪),Skeleton TrackingKinect的核心技術,Kinect最多可以追踪20個骨骼點,用來判定學員是否在加完油後收錢,這一連續的動作情況是否完成,倘若沒有則會做提醒的指令。

                                              <圖三> 骨架追蹤人體20個骨骼點



2011年4月13日 星期三

自閉症的行為



 
1.      自閉症學生的異質性很高,當服導他們時,依個別情況判定,服導建議不宜硬套到每一位學生身上。

2.      自閉症學生與人發展都是基於特殊興趣。(從他們較喜歡的事物下手,較容易與他們交朋友。)
3.      東西,不要隨便動,以免學員生氣、鬧脾氣。)

4.      缺乏社會的或感情上的互動。(他們較容易忽略別人,當在誇獎他時,他們沒做表示,也不要灰心或感到失落。)
5.      有交談上的障礙,例如:談話很少有來有往,常獨自談個、語言上發展不完全,可能會有錯誤的文法、有困難與人交談對他們沒興趣的主題、會學人說話、會用使自創的詞句。(“交談上須下一點功夫,盡量聊引發共鳴的主題,並作記錄)

6.      喜好具體的方式使用玩具ex堆積木、佈置娃娃屋,不喜歡模仿性的遊戲xe:扮家家、躲貓貓。(在我看來他們可能偏好有成就感獨創性的東西,所以,之前提議作帶動跳的想法,要試著轉換一下規則或性質。)
7.      偏好一種或多種刻版且狹隘的興趣,有興趣的主題可能與年齡不相襯ex日歷運算、占星術、飛機班次等、對特殊興趣的主題與細節有絕佳的注意力、強烈聚焦於特定興趣,排除其他主題。(找到他們興趣很重要,不然就要激發他們的興趣。)
8.      他們會毫無彈性的執行特定的、非功能性的日常事務或儀式。(可以從此性質下手作矯正或設計運用方式)

參考資料:自閉症輔導手冊/台北教育大學

2011年4月4日 星期一

gyration air mouse 運用在過動兒

此文章對於過動兒簡稱學員,
參考Research in Developmental Disabilities 32 (2011) 30–36
基本系統配備介紹:


在學員的左右腳各配置Logitech 2.4 G wireless gyration air mouse,如圖(a)(b)
控制系統是Eee Box mini computer(內裝ALHBRP軟件和built-in Microsoft Windows XP Home Edition)

The flow diagram of the active limb movement reducing test software (ALMRTS).

作者希望更進一步:  
作者希望可以利用此系統,用在更多不同症狀上。(本研究是以過動為主)

優點:
  針對不同的每個學員設計每個學員所喜歡作的事,像是放一首音樂、看電影、玩玩具。

每個學員對於環境所受到的刺激都不一樣,有的人會很興奮、有的人會不以為意,找出學員所喜歡的興趣是很重要的課題,此外作者希望對學員家裡所能負擔的情況也納入考量,除了玩樂方面,也希望加入一點教育的成分。

關鍵字:
active limb movement reducing test software (ALMRTS)
time duration for maintaining static limb posture (TDMSLP)

2011年3月13日 星期日

使用note book 內建藍芽傳輸資料



STEP..1請連到 Acer 網站
"http://service.acer.com.tw/service/acer/download/index.jsp",
選定機種後會進入下載頁面, 完成產品系列à產品線à產品型號-->確認你選擇參考圖<>,之後,下載藍芽驅動程式。

<>

STEP..2下載後請雙按資料夾內的藍芽圖示執行、並依說明安裝即可。(參考圖二)



圖二
操作結果:


參考圖三,中間視窗顯示<Nokia X2-00>正傳送檔案<相片0281.jpg>
按下確定即可收到收手機擋案。


圖三

參考圖四,筆電成功收到到手機透過藍芽裝置所傳輸的檔案。

圖四








2011年3月9日 星期三

甚麼是WII手把?

Wii遙控器的外型為棒狀,就如同電視遙控器一樣,可單手操作。

它還有兩項功能:
如同光線槍滑鼠一般可以控制螢幕上的游標
可偵測三維空間當中的移動及旋轉。

結合兩者可以達成所謂的「體感操作」。



說明:
1.控器利用短頻的藍牙電波與遊戲主機連接,最多可同時使用4Wii遙控器,最遠感應距離為遊戲主機外10公尺(約30英尺)。[最佳是用距離光學感應條5公尺內使用。]
2.Wii遙控器使用了通用性強的藍芽作無線連接部分,所以,方便的和電腦連接。3.電腦里安裝GlovePIE這個軟體轉換Wii遙控器動作為鍵盤、滑鼠動作。

關鍵字: 藍牙GlovePIE

2011年1月15日 星期六

部落格開張囉~

目前部落格尚未架設完整,

待營隊忙完後,再規劃部落格整體架構。

所以...

NowLoading...