{"id":23442554,"url":"https://github.com/mvdoc/pitcher_localizer","last_synced_at":"2025-06-29T16:37:21.153Z","repository":{"id":75577349,"uuid":"109447809","full_name":"mvdoc/pitcher_localizer","owner":"mvdoc","description":"PsychoPy implementation of the dynamic face localizer from Pitcher et al., 2011, NeuroImage","archived":false,"fork":false,"pushed_at":"2019-11-22T18:31:32.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-09T21:49:34.643Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mvdoc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-03T22:21:00.000Z","updated_at":"2019-11-22T18:31:34.000Z","dependencies_parsed_at":"2023-06-06T23:30:13.438Z","dependency_job_id":null,"html_url":"https://github.com/mvdoc/pitcher_localizer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mvdoc/pitcher_localizer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvdoc%2Fpitcher_localizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvdoc%2Fpitcher_localizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvdoc%2Fpitcher_localizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvdoc%2Fpitcher_localizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mvdoc","download_url":"https://codeload.github.com/mvdoc/pitcher_localizer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvdoc%2Fpitcher_localizer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262627795,"owners_count":23339660,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-23T17:32:43.658Z","updated_at":"2025-06-29T16:37:21.127Z","avatar_url":"https://github.com/mvdoc.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dynamic Face/Body/Scene localizer\n\nThis repository contains a PsychoPy implementation of a dynamic localizer, \n facet inspired from the paradigm by Pitcher, D., Dilks, D. D., Saxe, R. R., \nTriantafyllou, C., \u0026 Kanwisher, N. (2011). Differential selectivity for dynamic \nversus static information in face-selective cortical regions. \n*Neuroimage*, 56(4), 2356-2363.\n\n## Details\nEach run contains five categories\n\n1. faces\n2. objects\n3. bodies\n4. scenes\n5. scrambled objects\n\nwhich are presented with the following paradigm:\n\n- fixation (18s)\n- randomized blocks of categories with no inter-trial interval (18s * 5)\n- fixation (18s)\n- reversed order of categories as in previous block (18s * 5)\n- fixation (18s)\n\nEach block contains six video clips of about 3s each.\nEach run lasts 234s.\n\nParticipants perform a 1-back repetition detection on the clip. In each run \nthere is one such repetition once for every category. By default four runs \nare generated.\n\n### Stimuli\nThe stimuli are not shared with this repository because I don't have the \nlicense to release them. Please contact the authors of the original paper, \nor use your own clips. Simply store them in the `stimuli` directory, with a \nsubdirectory for each category, e.g.\n\n```\nstimuli\n├── bodies\n├── faces\n├── objects\n├── scenes\n└── scrambled_objects\n\n\n```\n\n## How To\nRunning the script without arguments will start a dialog where you can input\nthe participant's information. Alternatively the script can be run from the\ncommand line with the following arguments\n  \n```bash\n$ python run_localizer.py -h\n\nusage: run_localizer.py [-h] [--subject SUBJECT] [--runnr {1,2,3,4}]\n                        [--no-scanner] [--no-fullscreen]\n\nPresentation script for a face/object/scene/bodies localizer, inspired by the\nparadigm in Pitcher, D., Dilks, D. D., Saxe, R. R., Triantafyllou, C., \u0026\nKanwisher, N. (2011). Differential selectivity for dynamic versus static\ninformation in face-selective cortical regions. Neuroimage, 56(4), 2356-2363.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --subject SUBJECT, -s SUBJECT\n                        subject id\n  --runnr {1,2,3,4}, -r {1,2,3,4}\n                        run nr\n  --no-scanner          do not listen to the serial port\n  --no-fullscreen       do not run in fullscreen\n\n```\n\n\n### Extracting logs for BIDS `events.tsv` files\nThe script will create a logfile for each subject and run under \n`res/sub-id/`. The log contains already all the information to create a BIDS\ncompliant `events.tsv` files. You just need to grep `BIDS`, and that's it. \nFor example:\n\n```bash\n$ grep BIDS res/test/sub-test_task-localizer_run-1_20171102T142349.txt | awk '{for (i=3; i\u003cNF; i++) printf $i\"\\t\";print $NF}' | head\nonset   duration        stim_type       repetition\n0.000   18.000  fixation        None    0\n18.000  3.000   scrambled_objects       ./stimuli/scrambled_objects/scrambled_obj_17.mp4        0\n20.491  0.000   button_press    null    0\n21.002  3.000   scrambled_objects       ./stimuli/scrambled_objects/scrambled_flag.mp4  0\n24.002  3.000   scrambled_objects       ./stimuli/scrambled_objects/scrambled_digital_mixer.mp4 0\n27.003  3.000   scrambled_objects       ./stimuli/scrambled_objects/scrambled_wind_chimes.mp4   0\n30.003  3.000   scrambled_objects       ./stimuli/scrambled_objects/scrambled_candle2.mp4       0\n33.003  3.000   scrambled_objects       ./stimuli/scrambled_objects/scrambled_inside_piano.mp4  0\n36.004  3.000   bodies  ./stimuli/bodies/body_17.mp4    0\n```\n\nNote that also button presses are recorded, so that they can be added as \nadditional nuisance regressors in the GLM.\n\n## Acknowledgments\n\nThanks to [Sarah Herald](http://geon.usc.edu/~sarah/) for sharing the \ninitial implementation of the localizer in MATLAB/Psychtoolbox.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmvdoc%2Fpitcher_localizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmvdoc%2Fpitcher_localizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmvdoc%2Fpitcher_localizer/lists"}