close

(Sony Xperia Touch Demo 影片)

我工作內容是根據客戶需求做出他們想要的軟體

因此常常需要survey未知領域

若以下理解有錯誤的請不吝指正

 

🌍環境 

▪投影機將電腦(Win10)畫面投影到桌面上

▪IR camera (讓程式偵測手指位置)

環境是客戶那邊原本就架設好的

我只做軟體 因此不要問我怎麼做的

我也不知道XD

🍩需求 

讓投影桌面有touch功能

💡想法

1.  抓到IR camera拍攝到的手指座標 (如何抓到座標網路上已有許多方法可參考,在此不贅述) →將點位轉成touch event  

     此方法失敗,原因有2

     ▪survey不到  已知座標->touch event  要怎麼做,大部分都是談到如何將touch event轉成mouse

     ▪就算可以做到 座標->touch event,但touch的gesture我還是要另外處理,這並非易事。

      我需要能分辨出單一touch點 的down / up / drag   ,另外若是multitouch的話

      我會收到海量的座標點,要如何分辨出這些座標是屬於哪個手指的呢?

      因此我轉而survey另一個方向

          註:survey過程中發現windows有內建的touch 模擬器

          C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Simulator\15.0\ Microsoft.Windows.Simulator.exe 

 

2.   survey keyword :multitouch/ emulate touch / projector touch /multitouch table /

                                    Touchscreen Projector/Surface Touch Table/投影觸控

     ▪  Enable multitouch on WPF controls  做一個有multitouch功能的WPF程式,

         但就只會在WPF的window上有作用

         我需要的是global touch功能,也就是不限一定要在WPF window上的touch點

      ▪  CCV and TUIO Mouse   (英文)

         這個影片很簡單,卻幫助我很大(要看作者在底下的回覆),

         讓我終於看懂了 Software Implementing TUIO   ♥

         也完成我需要的功能

              我的軟體架構如下:(其實我還沒寫到程式,都是拿現成的東西來用)

⛏開始做啦

 跟著一步一步做 

 下載 CCV1.5.exe 並安裝然後開啟

   CCV 它以视频作为输入流,从中捕捉跟踪到的触点信息,包括事件(手指下压、移动、释放等)及触点坐标 

   (此句擷取自CCV入门教程(一))

   介面很直觀,很好上手

   細項怎麼操作請參考 ccv入門
   

    

下載EcoTUIODriver 並依照README安裝然後開啟

   CCV的資料會傳給 EcoTUIODriver  

   開啟EcoTUIODriver會看到以下的介面

   紅框部分會顯示touch點

   綠框部分按下去的話,紅框部分的touch點就會消失,到windows上面呈現

     因此要讓投影桌面有touch功能就要按綠框部分的鈕

 

    註:執行EcoTUIODriver的時候,

           同時會有一個叫做Tuio- To -vmulti - Device1service常駐

           此Service就算把EcoTUIODriver的UI關閉,

           還是會繼續執行

 

 

校正

   一開始觸控點會跟實際投影畫面偏移很多

   所以第一步一定需要校正( Calibration)

   不得不說CCV真是太棒惹!

   因為它也有Calibration功能

   按下畫面左上的Calibration之後

   照著畫面中間的指示

   按C開始校正  (等圈圈全變色手指再起來換下個點)

   校正完按X離開 ->重要重要! 

   我第一次試的時候

   校正完是按Esc離開 結果設定沒吃進去

   觸控點位置一樣很歪啊

   我還覺得這校正功能也太爛  根本假的嘛

   (原來普攏共的是我....)

 

▪ 觸控桌面可以用啦!!!!!!

 

📋 ToDo List

要將以上功能程式化

不外乎就是要開始找source code

程式一開機就常駐啦 ...etc

 

📚 參考資料

▪  Multi-touch Screens in the Open Source World (英文)

   這影片有一個多小時,可以幫助了解Multi-touch Screen

▪  多點觸控論壇   (英文)

▪  多點觸摸技術手冊 (簡中版)

▪  Multi-touch Table with Image Capturing (英文)

   此論文裡面Fig 6顯示軟體架構

▪  Software Implementing TUIO  (英文)

▪  http://ccv.nuigroup.com/ 

▪  Multi-touch Table   

   Software部分介紹TUIO

▪  MultiTouchVista   for win7 https://archive.codeplex.com/?p=multitouchvista

 

 

🉐後話

網路上可找到的multitouch screen資料其實都超舊 (十年以上的不少見)

我才了解到原來multitouch screen已經不是什麼稀奇的技術啊...

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 iam9527 的頭像
    iam9527

    翁丸的育兒筆記

    iam9527 發表在 痞客邦 留言(0) 人氣()