117 lines
2.7 KiB
Python
117 lines
2.7 KiB
Python
# Authors: The MNE-Python contributors.
|
|
# License: BSD-3-Clause
|
|
# Copyright the MNE-Python contributors.
|
|
|
|
"""Open the coregistration GUI.
|
|
|
|
Examples
|
|
--------
|
|
.. code-block:: console
|
|
|
|
$ mne coreg
|
|
|
|
"""
|
|
|
|
import os.path as op
|
|
|
|
import mne
|
|
|
|
|
|
def run():
|
|
"""Run command."""
|
|
from mne.commands.utils import _add_verbose_flag, get_optparser
|
|
|
|
parser = get_optparser(__file__)
|
|
|
|
parser.add_option(
|
|
"-d",
|
|
"--subjects-dir",
|
|
dest="subjects_dir",
|
|
default=None,
|
|
help="Subjects directory",
|
|
)
|
|
parser.add_option(
|
|
"-s", "--subject", dest="subject", default=None, help="Subject name"
|
|
)
|
|
parser.add_option(
|
|
"-f",
|
|
"--fiff",
|
|
dest="inst",
|
|
default=None,
|
|
help="FIFF file with digitizer data for coregistration",
|
|
)
|
|
parser.add_option(
|
|
"--head-opacity",
|
|
type=float,
|
|
default=None,
|
|
dest="head_opacity",
|
|
help="The opacity of the head surface, in the range [0, 1].",
|
|
)
|
|
parser.add_option(
|
|
"--high-res-head",
|
|
action="store_true",
|
|
default=False,
|
|
dest="high_res_head",
|
|
help="Use a high-resolution head surface.",
|
|
)
|
|
parser.add_option(
|
|
"--low-res-head",
|
|
action="store_true",
|
|
default=False,
|
|
dest="low_res_head",
|
|
help="Use a low-resolution head surface.",
|
|
)
|
|
parser.add_option(
|
|
"--trans",
|
|
dest="trans",
|
|
default=None,
|
|
help='Head<->MRI transform FIF file ("-trans.fif")',
|
|
)
|
|
parser.add_option(
|
|
"--interaction",
|
|
type=str,
|
|
default=None,
|
|
dest="interaction",
|
|
help='Interaction style to use, can be "trackball" or "terrain".',
|
|
)
|
|
_add_verbose_flag(parser)
|
|
|
|
options, args = parser.parse_args()
|
|
|
|
if options.low_res_head:
|
|
if options.high_res_head:
|
|
raise ValueError(
|
|
"Can't specify --high-res-head and --low-res-head at the same time."
|
|
)
|
|
head_high_res = False
|
|
elif options.high_res_head:
|
|
head_high_res = True
|
|
else:
|
|
head_high_res = None
|
|
|
|
# expanduser allows ~ for --subjects-dir
|
|
subjects_dir = options.subjects_dir
|
|
if subjects_dir is not None:
|
|
subjects_dir = op.expanduser(subjects_dir)
|
|
trans = options.trans
|
|
if trans is not None:
|
|
trans = op.expanduser(trans)
|
|
import faulthandler
|
|
|
|
faulthandler.enable()
|
|
mne.gui.coregistration(
|
|
inst=options.inst,
|
|
subject=options.subject,
|
|
subjects_dir=subjects_dir,
|
|
head_opacity=options.head_opacity,
|
|
head_high_res=head_high_res,
|
|
trans=trans,
|
|
interaction=options.interaction,
|
|
show=True,
|
|
block=True,
|
|
verbose=options.verbose,
|
|
)
|
|
|
|
|
|
mne.utils.run_command_if_main()
|