A novel approach of devising visual search eye-tracking data using ACT-R EMMA(Salvucci, 2001). It can generate the fixation durations, object encoding time along with scanpath for all the object present in SALICON and COCO-SEARCH-18 datasets using YOLOv3 object recognition algorithm.
Driven by my personal interest
Generate Scanpaths for the following datasets with the help of ACT-R's visual search module and compare visual search results of ACT-R EMMA with baseline models
- SALICON: Derive encoding time for all objects present in a natural scene image based on YOLO v3 categories.
- COCO-Search-18: Derive encoding time for target search object based on 18 categories.
Generate Scanpaths for videos
- Download the SALICON (LSUN) and Coco-Search-18 datasets, create a new directory 'data' and put them inside.
+-- data
| +-- coco_search_18
| +-- ...json
| +--detected
| +--images
| +--simulations
| +-- salicon
| +--detected
| +--images
| +--simulations
+-- compare.py
+-- concat.py
+-- main.py
+-- multiactrsim.py
+-- yolov3.weights- Download the yolov3 pre-trained weights from https://pjreddie.com/media/files/yolov3.weights
- Refer to
start.ps1script for windows andstart.shscript for linux systems
-
Object Recognition
- run
main.py, for object recognition. It uses yolov3 withprobability threshold: 0.6. For usage, refer tostart.shorstart.ps1 - check the output CSVs based on split under
data\[dataset]\detected. concat.py, for concatenating all the files into a single CSV file containing image names, list of objects as CSV rows.
- run
-
ACT-R simulation
multiactrsim.py- For usages, refer tostart.shorstart.ps1. It generates the output (CSVs) indata\[dataset]\simulations.
-
Evaluation
compare.py- For usages, refer tostart.shorstart.ps1. Refer/Edit the code in case of any making any specific comparisionsvisual_search.ipynb- Jupyter notebook for visualizing results and other comparison operations.
-
MultiMatch: used in
compare.py. For reference, see https://multimatch.readthedocs.io/en/latest/ -
ScanMatch: The matlab script for scanmatch can be found in
results\matsrc.mat. For reference, see https://seis.bristol.ac.uk/~psidg/ScanMatch/#Tutorial-
To run for SALICON, open the
matsrc.matin matlab, go inside the salicon folder.results\saliconand pressrun. -
To run for COCO-SEARCH-18, open the
matsrc.matin matlab, go inside the coco-search-18 folder.results\coco-search-18and pressrun.
-
Set the parameters for evaluation in the matsrc.mat using the command ScanMatchInfo = ScanMatch_Struct();
For reference, see https://seis.bristol.ac.uk/~psidg/ScanMatch/#Tutorial