Skip to content

visualengineers/reflex-muc-2023

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reflex-muc-2023

Study data, analysis and supplemental material for short paper "Exploring Dynamic Vibrotactile Feedback for Layer-based Interaction on Elastic Displays" published at Mensch und Computer 2023 - DOI: 10.1145/3603555.3608534

Content

Directory Description
code jupyter notebooks for cleaning/converting data, plots, descriptive statistics
construction CAD files for 3d printing mounts for vibro-motors
data raw study data
data\trial_data generated data for the study (feedback mode, target layer, positions of data points in scatter plot)
export data generated by jupyter notebooks (large files / images are excluded from source control)
export\data processed study data
export\img plots
export\spss data processed for easier analysis in SPSS
spss SPSS working files (incomplete)

Study data

  • Study data was pregenerated for 50 participants
  • Generated data can be found in data/trial_data
  • each participant is associated with a data file: data_{ParticipantId}.json

Structure

{
  "probandId": 0,                                 
  "blockData": [
    {
      "index": -4,
      "condition": "Combined Feedback",
      "trials": [
        {
          "trialIndex": 0,
          "layerIndex": 0,
          "resultNumber": 166,
          "resultIdx": 1,
          "points": {
            "points": [
              {
                "pos": { "posX": 781.69552830154, "posY": 263.7441949885747 },
                "layer": 3,
                "center": { "posX": 1548, "posY": 617 },
                "offset": {
                  "posX": 138.09552830153993,
                  "posY": 117.94419498857468
                },
                "category": 2,
                "distance": 524930.662542738
              }

              ... // more points

            ],
            "borderDistance": [
              0, 177754.79355419573, 355509.58710839145, 533264.3806625872,
              711019.1742167829, 888773.9677709786, 1066528.7613251742,
              1244283.5548793701
            ],
            "histogramDistance": [0, 0, 38, 173, 182, 126, 127],
            "histogramLayer": [158, 118, 145, 160, 135, 136, 148]
          },
          "globalTrialIndex": -1
        },

        ... // more trials
      ]
    }
  ]
}
  • each block is associated with a specific feedback condition and consists of a number of trials
  • blocks with a negative index are training blocks (excluded from analysis)
  • each trial consists of a list of points that are used to draw the scatterplot
  • each trial has an associated index (within the block), the result number and layer and a global trial index (for the participant over the whole experiment)
  • each point has a screen position, a layer, in which it is displayed and a category that defines the color

Study results

For each participant two files exist:

  • Pxx_2022-xx-xx.csv: contains raw tracking data for analysis of turning points, and overall tracking quality
  • Pxx_2022-xx-xx.json : contains results for each trial, especially:
    • Expected and reported result layers and result numbers
    • Layer configuration used in the task
    • Start of the Trial: StartDate
    • End of Interaction: EndInteractionDate
    • Time when layer result and number were reported: CommitResultDate
  • Remarks:
    • Datasets starting with P00 refer to test runs before the final study for testing/finetuning study setup and procedure

Notebooks

  • preprocess_convertMissingColumns: used to reconstruct the empty columns for layer numbers in pre-experiment data (one-time fix for test runs)
  • preprocess_convert_results:
    • merges separate results for each proband in one large result file (json and data) - do this, when new data is added, as export/data/data_experiment.csv is not in version control (too large)
    • computes additional columns
    • computes cleaned up interaction phase and saves times and markers to associated columns in results / data
  • preprocess_fix_p19: merge datasets of participant 19 (restart of application after Block 1) + switches reported number and layer
  • preprocess_export_SPSS: transformation of Datset and export for direct analysis in SPSS
  • study_questionnaire-general: first raw extraction of results on separate data files
  • study_duration:
    • load data either from export/data/results_experiment_cleanedDuration.csv (cleaned-up interaction times) or from export/data/results_experiment.csv
    • computes statistics for duration and
    • correctness of results
    • mean difference between reported and expected layer result
  • study_outcome: computes statistics regarding success rate of reported layers and numbers
  • study_turning-points, study_peaks:
    • computes turning points
    • compute cleaned up interaction data by removing leading and trailing idle times
  • study_frametimes: compute frametimes from data_all.csv to validate the tracking quality during the experiment
  • study_layerChanges: statistics for number of layer changes during the trial
  • study_inLayerDurations: statistics for for mean durations of holding a layer during the trial
  • study_validity: descriptive statistics and plots for general study procedure
  • study_regression_plots: regression analysis and plots for devleopment of mean trial duration ober the blocks in respect to the conditions

update results

in case of new results added, execute the following steps in the given order:

  1. add missing ; at the end of the header in the newly added .csv files
  2. run preprocess_convert_results.ipynb to update the result including the computed values
  3. optional: run preprocess_export_SPSS.ipynb to generate exports suitable for SPSS analysis
  4. run the following nb files in arbitrary order:
    • study_questionnaire-general.ipynb
    • study_duration.ipynb
    • study_outcome.ipynb
    • study_inLayerDurations.ipynb
    • study_layer-changes.ipynb
    • study_peaks.ipynb
    • study_turning-points.ipynb
    • study_regression_plots.ipynb
  5. for validating data quality, run the following Notebooks in arbitrary order:
    • study_frametimes.ipynb
    • study_validity.ipynb

afterwards, the exported csv -files can be re-imported to spss to regenerate the statistics results.

About

Study data, analysis and supplemental material for short paper "Exploring Dynamic Vibrotactile Feedback for Layer-based Interaction on Elastic Displays" published at Mensch und Computer 2023

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors