Visual Search

Visual Search Templates and Examples

Location

Find these templates in the ExampleScripts-VisualSearch directory.

Installation Note

Before you begin, ensure you have installed the numpy, matplotlib, and PANDAS python libraries if you want to use the additional visualization tools. Install them via the Package Manager: navigate to Tools -> Package Manager.

Overview of Visual Search Tasks

This suite includes four distinct Visual Search tasks. Each task can be run as-is or customized to suit your needs. Key features include:

Task 1: Customizable Visual Search

Task Description

In this task, participants are instructed to locate a specified target object amidst a series of objects. Upon successfully finding the target, an auditory cue is triggered, and the object is highlighted. Post-task, you can access raw data files, interactive session replays, and, if using Biopac Acqknowledge, analyze physiological data.

Running the Task

Customization Guide

To tailor this task to your specific requirements, follow these steps:

Task 2: Visual Search Single Object - Experimenting with Variable Manipulation 

(No Code version in VisualSearch1_SingleObject_GUI)

Task Overview

'Visual Search Single Object' offers a focused approach to demonstrating experimental control in a visual search task. This setup is particularly valuable for:


Experiment Dynamics

Task Description

In this task, participants are placed in an environment with a singular object—the target. The challenge is to locate this object, whose size and position or the object itself (independent variables) vary across trials. This variation is crucial for examining how changes in object characteristics influence the participant's time (dependent variable) to locate the target. Can be added to an environment with an array of objects as well. 

Data Collection and Analysis

Post-session, the data is stored in data. Analyze this data using the SingleObject_Analysis tools to explore the correlation between the object's size and position and the time taken to find it.

Customizing the Experiment with Code

Configuring Experimental Conditions

Tailor these parameters in the configuration file to design your experiment:

NUMBER_OF_TRIALS = 3RANDOMIZE = TrueUSE_SINGLE_OBJECT = TrueSHOW_INSTRUCTIONS = TrueENVIRONMENT_MODEL = 'sightlab_resources/example_resources/dojo_clear.osgb'#ENVIRONMENT_MODEL = 'sightlab_resources/environment/dojo2.osgb'STIM_FILE_LOCATION = 'SingleObject_StimFile/stim_file_simple.csv'SIZE_VARIABLE = 'object size'POSITION_VARIABLE = 'object position'MODEL_VARIABLE = 'object model'
target_object_size = {'small':[0.5,0.5,0.5],'medium':[2,2,2],'large':[4,4,4]}
target_object_position = {    'position1': {'coordinates': [0,1,2], 'euler': ([0, 0, 0])},    'position2': {'coordinates': [0,1.5,3], 'euler': ([0, 0, 0])},    'position3': {'coordinates': [1,0,2], 'euler': ([0, 0, 0])}}
target_object_models = {'basketball':'sightlab_resources/objects/basketball.osgb', 'volleyball':'sightlab_resources/objects/volleyball.osgb','soccerball':'sightlab_resources/objects/soccerball.osgb'}   if USE_SINGLE_OBJECT:    TARGET_OBJECT = vizfx.addChild('sightlab_resources/objects/basketball.osgb')    TARGET_OBJECT_NAME = 'basketball'else:    TARGET_OBJECT = [vizfx.addChild(model_path) for model_path in target_object_models.values()]    TARGET_OBJECT_NAME = list(target_object_models.keys())

Customizing the Experiment with No Code


Customizing Single Object GUI

Either make a copy of the project folder or replace the models for "condition1", "condition2", etc. with your own environment and target object. In the GUI interface, click Modify and change the object name for the end trial condition. 

Task 3: Visual Search Multiple Objects - Analyzing Choice and Confidence

Task Overview

In the 'Visual Search Multiple Objects' task, participants are engaged in an environment where they must discern a target object based on size differences. This task is designed to study participant choices and confidence levels under varying conditions, and provides rich data for analysis.

Task Dynamics

Data Analysis and Visualization

Customization Options

Customize the experiment by adjusting the following parameters in Config_Visual_Search2.py:

Data Storage

Controls

Regular controls for navigation and interaction within the environment also apply.

Task 4: Visual Search Randomize - Timed and Standard Challenges

Overview

The 'Visual Search Randomize' task (Visual_Search_Randomize.py), initially set in an art gallery environment (modifiable as per your needs), offers a dynamic visual search experience. In each trial, participants are immersed in a virtual environment scattered with various objects. Their primary goal is to locate a specific target object. The task stands out for its randomization of object locations in each trial, introducing both consistency and variability in the search challenge.

Experimental Conditions

In both conditions, finding the target triggers an auditory alarm, and the trial concludes 3 seconds thereafter.

Post-Trial Data Analysis

Customization Options (in the Config_Visual_Search_Randomize.py file) 

Additionally, modify the STIM File in ArtGallery_StimFile/stim_file_visual_search.txt to change the condition, target object and duration of the timed trials

Data Saving Mechanism