2017-04-06 6 views
1

私は人間がどのように視覚的に動きの流れを分けるかを知りたいという実験をプログラムしようとしています。たとえば、移動ストリームが階段の飛行を登る人である場合、各ステップは単一のセグメントである可能性があります。 研究はここbasciallyこの1の複製ではなく、刺激の別のセットを持つ:各試験は、以下のような構造にする必要がありますhttp://dl.acm.org/citation.cfm?doid=2010325.2010326ビデオのプレーヤーバーに視覚的な時間マーカーを追加する

:モーション・ストリームのビデオ

  1. プレゼント。動画の現在の時刻と同期して移動するマーカーを持つ動画の下にバーを表示します(動画プレーヤーのGUIに非常に似ています)。

  2. ビデオをもう一度表示しますが、参加者はキーを押してビデオの下のバーに固定マーカーを追加させます。マーカーは、ビデオバーの中で、ボタンが押された時間に対応する時点に配置されるはずです(ビデオの長さが100秒で、ボタンがビデオに10秒間押し込まれたときなど)。バーの10%のマーク)。

私のインストラクターは、PsychoPyを使用して全体のプログラミングを提案しました。 PsychoPyは現在、Python 2.7のみをサポートしています。 私はプログラムを見て、それは有望に見えます。 1つはビデオを簡単に表示でき、rating scaleクラスは実装したいバーに似ています。しかし、いくつかの機能、すなわち、不足している:

  • 一つだけ単一のマーカーを設定することができ、被験者は倍数を設定することができるはず
  • 我々は同期して動くマーカーを持つようにしたい(1)の点で述べたように
  • ビデオで。
  • キーを押すと、ビデオの現在の時刻に対応するバーのマーカーにマーカーを配置する必要があります。

私の質問:PsychoPyモジュールを使用して上記の機能を実装するためのヒントはありますか?

これは推奨質問領域にどれだけ入るのか分かりませんが、私たちがこの実験用に望む機能を備えたウィジェットを持つ実験用GUIを書くためのモジュールを知っている場合、私はそれらについて知りたいと思うでしょう。

+0

ここでdiscourse.psychopy.orgフォーラムに参加することをお勧めします。ここでは、単一の質問/単一回答の形式ではなく、ディスカッションや継続的なサポートのために設定する方が適切です。 –

+0

@MichaelMacAskillそれは良い点です。私はこれが1つの問題ではないという事実を考えなかった。 – Zamomin

答えて

0

これにはPsychoPyが適しています。ただし、(あなたが注意しているように)レーティングスケールはおそらく、マーカーを作成するための適切なツールではありません。あなたは単純な多角形の形を作ることができます。これは、複数のマーカーと連続時間インジケーターとして機能します。

あなたは(あなたが正規化座標を使用していると仮定して)3つの頂点(三角形のインジケータを作る)とポリゴン刺激を行い、このようなものであるために、その場所を設定できます。

$[((t/movie_duration) * 2 - 1) , -0.9]

tを表すビルダー変数であります現在の試行で経過した時間(秒単位)。画面の中心は座標[0, 0]です。上のコードでは、ポインタが画面の左端から右端にスムーズに移動し、画面の下端に近づき、移動が終了すると右端に到達します。ポリゴンの位置フィールドを設定して、アニメーションが連続するようにすべてのフレームを更新します。

movie_durationは、ムービーの再生時間の秒単位のプレースホルダ変数です。あなたの条件ファイルでこれを指定することができ、またはあなたは私が考えるその期間、のようなものを取得するには、ムービーコンポーネントを照会することができます

$[((t/movie_stim_name.duration()) * 2 - 1) , -0.9]

あなたは同様の方法でキー入力に応じて、画面上のマーカーを残すことができますこれは、コードコンポーネントに少しのPythonコードが必要になります。

+0

広範な答えをありがとう。私はいくつか質問があります: – Zamomin

+0

Sry、私は誤って "Enter"を押してから、編集に時間がかかりました。 ** 1 **(0,0)が画面の中央である場合、コードスニペットはポリゴンポインタを右端に向かって移動させずに中央に移動させません。x座標は-1で始まり0で終わりますか? ** 2。**私はネイティブスピーカーではないので、「クエリ」は何を意味しているのですか? MovieStimにはムービーの長さである属性.durationがあることはわかっています。 Btw:私はPythonで多少のプログラミング経験を持っていますので、GUIレベルではなくコードで作業することは確実です。 – Zamomin

+0

あなたは算術については正しかったので、右側に向かうには2倍の係数が必要でした。ムービーの期間に直接アクセスする方法を示すバージョンも追加しました。 –

関連する問題