EducationalTestingService / Confero

Eye-tracking, Screen and Event Capturing System for Windows. A web application running on a separate PC allows for real time monitoring of the users actions.
GNU General Public License v3.0
9 stars 1 forks source link

Validation Settings #64

Closed isolver closed 9 years ago

isolver commented 10 years ago

Update validation code to use config file settings. Currently the settings are set in the python script .

isolver commented 9 years ago

Done, validation settings are currently in a validation_config.yaml file, in same folder as other config files. Here is the current settings:

target_graphics:
    default: &default_target_stim
        radius: 16              # 16 pix outer radius.
        fillcolor: [.5, .5, .5]  # 75% white fill color.
        edgecolor: [-1, -1, -1]  # Fully black outer edge
        edgewidth: 3             # with a 3 pixel width.
        dotcolor: [1, -1, -1]    # Full red center dot
        dotradius: 3             # with radius of 3 pixels.
        units: pix               # Size & position units are in pix.
        colorspace: rgb          # colors are in 'rgb' space (-1.0 - 1.0) range
                                 # forevents r,g,b.
        opacity: 1.0             # The transparency of the target (0.0 - 1.0)
        contrast: 1.0            # The contrast of the target stim.

position_grids:
    default:  &default_position_grid
        shape: 3            # Defines the number of columns and rows of
                            # positions needed. If shape is an array of
                            # two elements, it defines the col,row shape
                            # for position layout. Position count will
                            # equal rows*cols. If shape is a single
                            # int, the position grid col,row shape will
                            # be shape x shape.
        posCount:            # Defines the number of positions to
                            # without any col,row position constraint.
        leftMargin:         # Specify the minimum valid horz position.
        rightMargin:        # Limit horz positions to be < max horz
                            # position minus rightMargin.
        topMargin:          # Limit vert positions to be < max vert
                            # position minus topMargin.
        bottomMargin:       # Specify the minimum valid vert position.
        scale: 0.85         # Scale can be one or two numbers, each
                            # between 0.0 and 1.0. If a tuple is
                            # provided, it represents the horz, vert
                            # scale to be applied to window width,
                            # height. If a single number is
                            # given, the same scale will be applied to
                            # both window width and height. The scaled
                            # window size is centered on the original
                            # window size to define valid position area.
        posList:            # Provide an existing list of (x,y)
                            # positions. If posList is provided, the
                            # shape, posCount, margin and scale arg's
                            # are ignored.
        noiseStd:           # Add a random shift to each position based
                            # on a normal distribution with mean :  0.0
                            # and sigma equal to noiseStd. Specify
                            # value based on units being used.
        firstposindex: 4    # Specify which position in the position
                            # list should be displayed first. This
                            # position is not effected by randomization.
        repeatfirstpos: True # If the first position in the list should
                            # be provided as the last position as well,
                            # set to True. In this case, the number of
                            # positions returned will be position
                            # count + 1. False indicated the first
                            # position should not be repeated.
        randomize: True     # Randomize the position list presentation order.

validation:
    target: *default_target_stim
    positions: *default_position_grid
    targ_animation:
        velocity: 800.0
        expandedscale: 2.0
        expansionduration: 0.1
        contractionduration: 0.1
    triggers:
        TimeTrigger:
            start_time:
            delay: 1.5
        DeviceEventTrigger:
            device: keyboard
            event_type: KEYBOARD_RELEASE
            event_attribute_conditions:
                key: space
    background:
    storeeventsfor:
    accuracy_period_start: 0.550
    accuracy_period_stop: .150
    show_intro_screen: True
    intro_text: Validation procedure is now going to be performed.
    show_results_screen: True
    results_in_degrees: True