#8685 closed defect (fixed)
cannot open DICOM folder
Reported by: | Elaine Meng | Owned by: | Zach Pearson |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | DICOM | Version: | |
Keywords: | Cc: | pett | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: macOS-12.6.3-arm64-arm-64bit ChimeraX Version: 1.6.dev202303210015 (2023-03-21 00:15:42 UTC) Description Trying to open DICOM folder that results from uncompressing the RIDER lung example for one patient (data /wynton/group/ferrin/usr.local/projects/chimerax/www/data/dicom/98820 RIDER-1129164940.tar.bz2 ) gives an error in the current daily build. Log: Startup Messages --- notes | 2023-03-21 09:37:27,963:INFO:OpenGL_accelerate module loaded 2023-03-21 09:37:28,029:INFO:Using accelerated ArrayDatatype > open /Users/meng/Desktop/startup.cxc > alias reset view orient; view initial > alias start tool show $1 > alias whereprefs info path user unversioned config > alias captut open help:user/tutorials/binding-sites.html#cap-example > alias previewts toolshed url https://cxtoolshed- > preview.rbvi.ucsf.edu;toolshed reload available > alias normalts toolshed url https://cxtoolshed.rbvi.ucsf.edu;toolshed reload > available > alias btut open > https://www.cgl.ucsf.edu/home/meng/chimerax/vdocs/user/tutorials/binding- > sites.html; ui dockable false "Help Viewer" > alias stut open https://www.rbvi.ucsf.edu/chimerax/data/conservation- > coloring/conservation-coloring.html; ui dockable false "Help Viewer" > alias ltut open https://www.rbvi.ucsf.edu/chimerax/data/loop-modeling/loop- > modeling.html; ui dockable false "Help Viewer" > alias mtut open https://www.rbvi.ucsf.edu/chimerax/data/mole-channel/mole- > channel.html; ui dockable false "Help Viewer"; windowsize 600 800 executed startup.cxc UCSF ChimeraX version: 1.6.dev202303210015 (2023-03-21) © 2016-2023 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open "/Users/meng/dicom/tcia/RIDER Lung CT/RIDER-1129164940" format nifti Traceback (most recent call last): File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/toolbar/tool.py", line 205, in callback bundle_info.run_provider(session, name, session.toolbar, display_name=display_name) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/toolshed/info.py", line 386, in run_provider return api._api_caller.run_provider(api, session, name, mgr, **kw) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/toolshed/__init__.py", line 1289, in run_provider return cls._get_func(api, "run_provider")(session, name, mgr, **kw) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/medical_toolbar/__init__.py", line 22, in run_provider actions.run_provider(session, name) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/medical_toolbar/actions.py", line 17, in run_provider open_dicom(session) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/medical_toolbar/actions.py", line 23, in open_dicom show_open_folder_dialog(session) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/dialog.py", line 177, in show_open_folder_dialog _folder_dlg.display(session) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/dialog.py", line 99, in display run(session, cmd) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/commands/run.py", line 38, in run results = command.run(text, log=log, return_json=return_json) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/commands/cli.py", line 2897, in run result = ci.function(session, **kw_args) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 119, in cmd_open models = Command(session, registry=registry).run(provider_cmd_text, log=log)[0] File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/commands/cli.py", line 2897, in run result = ci.function(session, **kw_args) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 176, in provider_open models, status = collated_open(session, None, paths, data_format, _add_models, log_errors, File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 464, in collated_open return remember_data_format() File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 435, in remember_data_format models, status = func(*func_args, **func_kw) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/__init__.py", line 26, in open nifti = NifTI.from_paths(session, data) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/nifti.py", line 26, in from_paths return cls(session, data) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/nifti.py", line 22, in __init__ self.nifti_images = [nibabel.load(file) for file in data] File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/nifti.py", line 22, in <listcomp> self.nifti_images = [nibabel.load(file) for file in data] File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/nibabel/loadsave.py", line 104, in load raise ImageFileError(f'Cannot work out file type of "{filename}"') nibabel.filebasedimages.ImageFileError: Cannot work out file type of "/Users/meng/dicom/tcia/RIDER Lung CT/RIDER-1129164940" nibabel.filebasedimages.ImageFileError: Cannot work out file type of "/Users/meng/dicom/tcia/RIDER Lung CT/RIDER-1129164940" File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/nibabel/loadsave.py", line 104, in load raise ImageFileError(f'Cannot work out file type of "{filename}"') See log for complete Python traceback. > open /Users/meng/Desktop/RIDER-1129164940 format nifti Traceback (most recent call last): File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/toolbar/tool.py", line 205, in callback bundle_info.run_provider(session, name, session.toolbar, display_name=display_name) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/toolshed/info.py", line 386, in run_provider return api._api_caller.run_provider(api, session, name, mgr, **kw) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/toolshed/__init__.py", line 1289, in run_provider return cls._get_func(api, "run_provider")(session, name, mgr, **kw) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/medical_toolbar/__init__.py", line 22, in run_provider actions.run_provider(session, name) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/medical_toolbar/actions.py", line 17, in run_provider open_dicom(session) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/medical_toolbar/actions.py", line 23, in open_dicom show_open_folder_dialog(session) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/dialog.py", line 177, in show_open_folder_dialog _folder_dlg.display(session) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/dialog.py", line 99, in display run(session, cmd) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/commands/run.py", line 38, in run results = command.run(text, log=log, return_json=return_json) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/commands/cli.py", line 2897, in run result = ci.function(session, **kw_args) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 119, in cmd_open models = Command(session, registry=registry).run(provider_cmd_text, log=log)[0] File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/core/commands/cli.py", line 2897, in run result = ci.function(session, **kw_args) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 176, in provider_open models, status = collated_open(session, None, paths, data_format, _add_models, log_errors, File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 464, in collated_open return remember_data_format() File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/open_command/cmd.py", line 435, in remember_data_format models, status = func(*func_args, **func_kw) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/__init__.py", line 26, in open nifti = NifTI.from_paths(session, data) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/nifti.py", line 26, in from_paths return cls(session, data) File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/nifti.py", line 22, in __init__ self.nifti_images = [nibabel.load(file) for file in data] File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/chimerax/nifti/nifti.py", line 22, in <listcomp> self.nifti_images = [nibabel.load(file) for file in data] File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/nibabel/loadsave.py", line 104, in load raise ImageFileError(f'Cannot work out file type of "{filename}"') nibabel.filebasedimages.ImageFileError: Cannot work out file type of "/Users/meng/Desktop/RIDER-1129164940" nibabel.filebasedimages.ImageFileError: Cannot work out file type of "/Users/meng/Desktop/RIDER-1129164940" File "/Users/meng/Desktop/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site- packages/nibabel/loadsave.py", line 104, in load raise ImageFileError(f'Cannot work out file type of "{filename}"') See log for complete Python traceback. OpenGL version: 4.1 Metal - 76.3 OpenGL renderer: Apple M1 Pro OpenGL vendor: Apple Python: 3.9.11 Locale: UTF-8 Qt version: PyQt6 6.4.2, Qt 6.4.2 Qt runtime version: 6.4.2 Qt platform: cocoa Hardware: Hardware Overview: Model Name: MacBook Pro Model Identifier: MacBookPro18,1 Chip: Apple M1 Pro Total Number of Cores: 10 (8 performance and 2 efficiency) Memory: 16 GB System Firmware Version: 8419.80.7 OS Loader Version: 7459.141.1 Software: System Software Overview: System Version: macOS 12.6.3 (21G419) Kernel Version: Darwin 21.6.0 Time since boot: 30 minutes Graphics/Displays: Apple M1 Pro: Chipset Model: Apple M1 Pro Type: GPU Bus: Built-In Total Number of Cores: 16 Vendor: Apple (0x106b) Metal Family: Supported, Metal GPUFamily Apple 7 Displays: Color LCD: Display Type: Built-in Liquid Retina XDR Display Resolution: 3456 x 2234 Retina Main Display: Yes Mirror: Off Online: Yes Automatically Adjust Brightness: Yes Connection Type: Internal Installed Packages: alabaster: 0.7.13 appdirs: 1.4.4 appnope: 0.1.3 asttokens: 2.2.1 Babel: 2.12.1 backcall: 0.2.0 beautifulsoup4: 4.11.2 blockdiag: 3.0.0 build: 0.10.0 certifi: 2021.10.8 cftime: 1.6.2 charset-normalizer: 3.1.0 ChimeraX-AddCharge: 1.5.9 ChimeraX-AddH: 2.2.3 ChimeraX-AlignmentAlgorithms: 2.0.1 ChimeraX-AlignmentHdrs: 3.3.1 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.9.3 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.0.3 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.43.10 ChimeraX-AtomicLibrary: 10.0.6 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.3.2 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.1.2 ChimeraX-BondRot: 2.0.1 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.8 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.2.2 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.3.2 ChimeraX-ChangeChains: 1.0.2 ChimeraX-CheckWaters: 1.3.1 ChimeraX-ChemGroup: 2.0.1 ChimeraX-Clashes: 2.2.4 ChimeraX-ColorActions: 1.0.3 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.3 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.6.dev202303210015 ChimeraX-CoreFormats: 1.1 ChimeraX-coulombic: 1.4.2 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-Dicom: 1.2 ChimeraX-DistMonitor: 1.3.3 ChimeraX-DockPrep: 1.1.1 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ESMFold: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.3 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.1.1 ChimeraX-Hbonds: 2.4 ChimeraX-Help: 1.2.1 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.1 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-Label: 1.1.7 ChimeraX-ListInfo: 1.1.1 ChimeraX-Log: 1.1.5 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.8.2 ChimeraX-Map: 1.1.4 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0.1 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.2 ChimeraX-MatchMaker: 2.0.12 ChimeraX-MDcrds: 2.6 ChimeraX-MedicalToolbar: 1.0.2 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.12 ChimeraX-MMTF: 2.2 ChimeraX-Modeller: 1.5.9 ChimeraX-ModelPanel: 1.3.6 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.2 ChimeraX-MouseModes: 1.2 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.0 ChimeraX-NRRD: 1.0 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.10.1 ChimeraX-PDB: 2.7 ChimeraX-PDBBio: 1.0 ChimeraX-PDBLibrary: 1.0.2 ChimeraX-PDBMatrices: 1.0 ChimeraX-PhenixUI: 1.1.7 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1 ChimeraX-PubChem: 2.1 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.1 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 3.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0.1 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.8.3 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.1.1 ChimeraX-ShowSequences: 1.0.1 ChimeraX-SideView: 1.0.1 ChimeraX-Smiles: 2.1 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.10.2 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.1.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.2.1 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.1.2 ChimeraX-ToolshedUtils: 1.2.1 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.28.4 ChimeraX-uniprot: 2.2.2 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.2 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.2 ChimeraX-WebServices: 1.1.1 ChimeraX-Zone: 1.0.1 colorama: 0.4.6 comm: 0.1.2 contourpy: 1.0.7 cxservices: 1.2.2 cycler: 0.11.0 Cython: 0.29.33 debugpy: 1.6.6 decorator: 5.1.1 docutils: 0.19 executing: 1.2.0 filelock: 3.9.0 fonttools: 4.39.2 funcparserlib: 1.0.1 grako: 3.16.5 h5py: 3.8.0 html2text: 2020.1.16 idna: 3.4 ihm: 0.35 imagecodecs: 2022.2.22 imagesize: 1.4.1 importlib-metadata: 6.1.0 ipykernel: 6.21.1 ipython: 8.10.0 ipython-genutils: 0.2.0 ipywidgets: 8.0.4 jedi: 0.18.2 Jinja2: 3.1.2 jupyter-client: 8.0.2 jupyter-core: 5.3.0 jupyterlab-widgets: 3.0.5 kiwisolver: 1.4.4 line-profiler: 4.0.2 lxml: 4.9.2 lz4: 4.3.2 MarkupSafe: 2.1.2 matplotlib: 3.6.3 matplotlib-inline: 0.1.6 msgpack: 1.0.4 nest-asyncio: 1.5.6 netCDF4: 1.6.2 networkx: 2.8.8 nibabel: 5.0.1 nptyping: 2.5.0 numexpr: 2.8.4 numpy: 1.23.5 openvr: 1.23.701 packaging: 21.3 ParmEd: 3.4.3 parso: 0.8.3 pep517: 0.13.0 pexpect: 4.8.0 pickleshare: 0.7.5 Pillow: 9.3.0 pip: 23.0 pkginfo: 1.9.6 platformdirs: 3.1.1 prompt-toolkit: 3.0.38 psutil: 5.9.4 ptyprocess: 0.7.0 pure-eval: 0.2.2 pycollada: 0.7.2 pydicom: 2.3.0 Pygments: 2.14.0 pynrrd: 1.0.0 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 3.0.9 pyproject-hooks: 1.0.0 PyQt6-commercial: 6.4.2 PyQt6-Qt6: 6.4.2 PyQt6-sip: 13.4.1 PyQt6-WebEngine-commercial: 6.4.0 PyQt6-WebEngine-Qt6: 6.4.2 python-dateutil: 2.8.2 pytz: 2022.7.1 pyzmq: 25.0.2 qtconsole: 5.4.0 QtPy: 2.3.0 RandomWords: 0.4.0 requests: 2.28.2 scipy: 1.9.3 setuptools: 67.4.0 setuptools-scm: 7.0.5 sfftk-rw: 0.7.3 six: 1.16.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.4 sphinx: 6.1.3 sphinx-autodoc-typehints: 1.22 sphinxcontrib-applehelp: 1.0.4 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 2.0.1 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.5 stack-data: 0.6.2 tables: 3.7.0 tcia-utils: 1.2.0 tifffile: 2022.10.10 tinyarray: 1.2.4 tomli: 2.0.1 tornado: 6.2 traitlets: 5.9.0 typing-extensions: 4.5.0 urllib3: 1.26.15 wcwidth: 0.2.6 webcolors: 1.12 wheel: 0.38.4 wheel-filename: 1.4.1 widgetsnbextension: 4.0.5 zipp: 3.15.0
Change History (14)
comment:1 by , 3 years ago
Component: | Unassigned → DICOM |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → cannot open DICOM folder |
comment:2 by , 3 years ago
comment:3 by , 3 years ago
I see the command is 'open "/Users/meng/dicom/tcia/RIDER Lung CT/RIDER-1129164940" format nifti' -- I'll definitely need to make it so that the error is handled more gracefully, but did you mean 'format nifti' at the end?
follow-up: 4 comment:4 by , 3 years ago
I used the "open dicom folder" icon in the Medical Image tab of the toolbar, which I think opens exactly the same dialog as menu: File... Open DICOM Folder. That dialog says "Files of type" which is set to "Directories"n and has no other choice.
comment:5 by , 3 years ago
Huh, that's really weird! Thanks for the additional context. I'll see what the issue is there. In the meantime, 'format DICOM' on the command line should still work.
follow-up: 6 comment:6 by , 3 years ago
Yeah, basically the dialog generates the wrong command. I did not even see the command because there was so much traceback that it scrolled out of the visible area of the Log.
comment:7 by , 3 years ago
I've only been able to reproduce this every handful of open attempts, but I think I know what the issue is. The "Open DICOM folder..." dialog actually works for any data that can be opened from a directory. I saw that there was a dialog at the bottom that just had None, None, None as entries. Upon investigating the dialog is trying to show x.synopsis where X is some data format tracked by the open command. Using the debugger, I could see the data formats were NRRD, NifTI, and DICOM. My guess is that the dialog is nondeterministically populated; usually DICOM is first, but it can be NifTI or NRRD sometimes. Step one is to give each data format a synopsis. Step 2 will be to sort the file types alphabetically when that list is constructed. We should maybe also change the wording on that dialog.
comment:8 by , 3 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
follow-up: 9 comment:9 by , 3 years ago
NifTI and NRRD are individual files, not directories. As far as I know/recall, the only type of data that has to be opened as a directory is DICOM (and after all, the menu entry is File... Open DICOM Folder). If you want to generalize the dialog to open all kinds of medical images, it should switch away from directory (to individual file) if the format is chosen as NiFTI or NRRD.
comment:10 by , 3 years ago
Well, there's a new ticket -- upon closer inspection NifTI and NRRD's bundle info tomls have allow-directory=false.
follow-up: 11 comment:11 by , 3 years ago
Also, makes some sense (to me, anyway) that format is "None" when the open dialog is selecting a directory/folder rather than a specific file.
comment:12 by , 3 years ago
Cc: | added |
---|
Yeah, NifTI / NRRD shouldn't be showing up in that dialog if allow-directory is false. Also, you shouldn't need to list '.gz' explicitly in your bundle description -- ChimeraX will handle compressed files (with appropriate suffixes) automatically (unless "want_path" is true).
comment:14 by , 3 years ago
Not in TOML. It's legal to have snake_case, camelCase, or kebab-case. Since the rest of the Python metadata is in kebab-case that's what I went with. TBB converts it to snake_case at build time.
correction, archive filename is /wynton/group/ferrin/usr.local/projects/chimerax/www/data/dicom/RIDER-1129164940.tar.bz2
(the "98820" part was just the file size from listing the filenames and then using cut-n-paste)