2014-03-13 62 views
1

我已經通過模擬器中的GestureBuilder生成了手勢文件。我的擔心有時會顯示錯誤的預測。對於例如如果我有一個手勢作爲大寫字母H,那麼如果我只是做了一個水平筆畫,它會檢測到匹配。 我添加了預測條件。> 1,那麼它也顯示相同。在GestureOverlayView中優化手勢預測

還有什麼更多的要加入到java方面。我也試過給SEQUENCE_SENSITIVE和ORIENTATION_INVARIANT。還試着設置setOrientationStyle(8);

請建議有沒有更多需要添加的東西。

回答

1

您需要設置適合您的最低分數。我建議用手勢名稱和分數打印出所有預測的手勢。如果您使用的是與我相同的演示代碼,那麼預測器應該自動將它們組織得分。

for (Prediction prediction : predictions) 
    System.out.println(prediction.name + " " + prediction.score); 

畫一個符號,看看控制檯吐出了什麼。你會看到它列出了每個手勢,以及它們與每個手勢的距離。設置最低分數(如果(prediction.score> 3.0)),然後只調用預測手勢列表中的第一個分數。調整分數直到你快樂。我發現了10個很好的作品,但對於我正在強制繪製精度的遊戲,我一路走到了25點。

請記住,這個分數與手勢文件中的手勢有多接近,所以如果文件中的手勢畫得不好,完美的繪畫不一定會得到最高分。

編輯:我也添加了左手勢和右手勢到我的應用程序,以防止誤報。如果左右滑動破壞你的應用,我建議增加這些手勢來捕捉它們。

+0

如果這不能回答你的問題,請澄清。 –