簡體   English   中英

凝視數據R包掃視分析中的問題

[英]Problems in the analysis of gaze data R package saccades

我以x / y坐標和時間戳的形式獲得了眼動凝視數據。

現在,我想使用R封裝掃視來繪制掃視。 不幸的是,它不起作用。 我想這是數據格式錯誤的問題。

我的資料:

head(EUFKDCDL_Q09AS_saccades)
# A tibble: 6 x 4
           time     x     y trial
          <dbl> <dbl> <dbl> <dbl>
1 1550093577941   732   391     1
2 1550093577962   706   320     1
3 1550093577980   666   352     1
4 1550093578000   886   288     1
5 1550093578017   787   221     1
6 1550093578037   729   302     1

無效的代碼:

fixations <- detect.fixations(EUFKDCDL_Q09AS_saccades)

detect.fixations(EUFKDCDL_Q09AS_saccades)中的錯誤:未檢測到掃視。 出問題了。

應該根據github( https://github.com/tmalsburg/saccades )工作的完整代碼:

library(saccades)
data(samples)
head(samples)
  time     x      y trial
1    0 53.18 375.73     1
2    4 53.20 375.79     1
3    8 53.35 376.14     1
4   12 53.92 376.39     1
5   16 54.14 376.52     1
6   20 54.46 376.74     1

fixations <- detect.fixations(samples)
head(fixations[c(1,4,5,10)])
  trial        x         y  dur
0     1 53.81296 377.40741   71
1     1 39.68156 379.58711  184
2     1 59.99267 379.92467   79
3     1 18.97898  56.94046  147
4     1 40.28365  39.03599  980
5     1 47.36547  35.39441 1310

diagnostic.plot(samples, fixations)

因此,我猜我的數據結構必然存在問題嗎? 什么意思

我希望你們中的任何一個都可以幫助我創建此掃視圖,如所附的場景圖所示

掃視圖

我是R初學者。

在嘗試分析數據之前, 必須將其可視化。 這將幫助您查看數據是否真正符合您的實際想法,並定性顯示某些數據質量問題的嚴重程度。

如果您的數據實際上是一個凝視數據的時間序列,那么你可以在你的例子通過繪制它想象如上只是x的一個函數timey作為函數time 這不需要您先通過掃視檢測算法來運行數據。 您上面顯示的圖只是原始數據的可視化,掃視檢測被疊加(灰色線),但這是一個可選步驟。

現在到您的原始數據:如果按照建議進行繪制,我懷疑它不會達到您的預期。 將其與您從https://github.com/tmalsburg/saccades發布的示例數據進行比較。 該數據集顯示了兩個特征:

  • 原始數據以亞像素精度(即小數點后兩位)給出。 這是經過校准的眼睛數據的典型特征,其中在任何一點上估計的凝視信號都是校准過程的輸出,該過程通過連續函數將原始眼睛視頻數據的坐標映射到觀看的圖像坐標,並產生看起來超過這些圖像的分辨率。 但是,您的數據由整數組成,這是不尋常的(但可能)。
  • 更重要的是,Github示例數據還顯示,每個樣本位置與其前一個樣本的位置變化很小(例如, x位置從一個樣本到下一個樣本從53.18變為53.20 )。 這是注視過程中真實注視數據的典型特征。 在掃視過程中,相鄰樣本的變化當然會開始迅速得多,您通常可以通過向下滾動一列值並注意相鄰值在何處快速變化來直觀地檢測它們。 將此與您的數據進行比較,這是完全不同的:值從一個樣本到下一個樣本不規則地上下波動(例如,連續樣本中的值從732706666886 )。 不是良好凝視數據信號的典型特征。 因此,繪制時間序列,看看那里實際有什么。

我懷疑您的數據中存在不連續性,這將導致任何掃視或注視檢測算法失敗。 在嘗試解析為掃視和注視之前,請嘗試弄清您的數據實際代表什么和/或質量問題。

提示:使用ggplot2庫可視化您的數據:

library(ggplot2)

ggplot(data = EUFKDCDL_Q09AS_saccades,
       aes(x = time)) + # define time series x axis
geom_line(aes(y = x), colour = 'red') +  # plot horizontal data
geom_line(aes(y = y), colour = 'yellow') # plot vertical time series too

如果未安裝ggplot2 ,請首先調用install.packages('ggplot2')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM