De-Identifying EDF Headers¶
Shared with the CNT
This procedure runs on infrastructure the lab and the CNT operate together. The CNT manual keeps its own copy; changes to the shared steps are agreed with the CNT.
Flagged for merging
The October 2026 audit recommends merging this page with a sibling (see AUDIT.md). The content stands until then.
What this page tells you
Move the Mxene and Clinical EDF files into cnt-fs, copy an ieeg-dataset.ini channel map, run anonymize_edf.sh on cnt1 to strip patient name and ID, then upload both deid folders to ieeg.org with the ieeg CLI and verify.
After a day of Mxene electrode testing, move the Mxene EDF file and the clinical EDF file into cnt-fs, de-identify their headers on cnt1, and upload both to ieeg.org.
- Move the EDF files into cnt-fs
- Use Remote Desktop to export the Mxene EDF file and the clinical EDF file from the day you did testing.
- Place the Mxene EDF file in
/mnt/cnt-fs/eeg_raw/Mxene_project/RIDXXX/RIXXX_Mxene - Place the clinical EDF file in
/mnt/cnt-fs/eeg_raw/Mxene_project/RIDXXXX/RIDXXXX_Clinical
- Place the Mxene EDF file in
- Use Remote Desktop to export the Mxene EDF file and the clinical EDF file from the day you did testing.
- Create the ieeg-dataset.ini channel mapping file
- Copy the channel mapping file from a previous subject (the Mxene and clinical files differ).
- Leave the file name and the channels as they are.
ieeg-dataset.ini
- De-identify the EDF file
- Open MobaXterm and, on cnt1, navigate to the program folder:
cd /project/eeg_process/programs/edf_headers - Run:
bash anonymize_edf.sh -n NAME -i ID -d DIRECTORY_INPUT -o DIRECTORY_OUTPUT- This creates a new EDF file with anonymized headers, named
"original_filename"_deid.edf. - Options:
-n: removes the patient name from the header and replaces it with the name given here. The recommended value isdeid.-i: removes the patient ID from the header and replaces it with the ID given here. The recommended value isdeid.-d: the path to the source directory where the EDF is stored. Example:/mnt/cnt-fs/eeg_raw/Mxene_project/RIDXXX/RIDXXX_Mxene-o: the path to the output directory where the de-identified EDF will be stored. Example:/mnt/cnt-fs/eeg_raw/Mxene_project/RIDXXXX/RIDXXXX_Mxene
- The
-n,-i,-dand-ooptions are all mandatory. The script errors if any of them is missing.
- This creates a new EDF file with anonymized headers, named
- Open MobaXterm and, on cnt1, navigate to the program folder:
- Upload the de-identified EDF folder to ieeg.org
- Make sure the
"original_filename"_deid.edffile and theieeg-dataset.inichannel mapping file are both in thecnt-fs/eeg_raw/Mxene_project/RIDXXX/deiddirectory, and that no other files are in there. - On cnt1, navigate to the ieeg CLI folder:
cd /project/eeg_process/programs/ieeg-cli.1.14.60 - First upload the Mxene EDF with this command:
./ieeg upload-directory -n 'Human_Data/Hospital of the University of Pennsylvania/Mxene_Electrode/RIDXXXX_Mxene' '/mnt/cnt-fs/eeg_raw/Mxene_project/RIDXXX/RIDXXX_Mxene/' - Then upload the clinical EDF with this command:
./ieeg upload-directory -n 'Human_Data/Hospital of the University of Pennsylvania/Mxene_Electrode/RIDXXXX_Clinical' '/mnt/cnt-fs/eeg_raw/Mxene_project/RIDXXXX/RIDXXXX_Clinical' - Check ieeg.org and verify that the EDF looks correct.
- Make sure the