You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When picking particles with spheres in napari, if no particles were picked in tomogram 1, then the n3d spheres layer disappears when pressing ']' to view tomogram 2. The layer does not disappear if a sphere was defined in tomogram 1. It seems that it expects the user to define a sphere in every tomogram. The run.out error message is more informative.
�[0;31m---------------------------------------------------------------------------�[0m
�[0;31mValueError�[0m Traceback (most recent call last)
File �[0;32msrc/psygnal/_signal.py:1196�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1225�[0m, in �[0;36m_run_emit_loop_immediate�[0;34m()�[0m
File �[0;32msrc/psygnal/_weak_callback.py:453�[0m, in �[0;36mcb�[0;34m()�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/pick/spheres.py:69�[0m, in �[0;36mPickSpheresWidget.synchronise_annotator�[0;34m(self=<tomography_python_programs.pick.spheres.PickSpheresWidget object>)�[0m
�[1;32m 68�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mremove(�[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer)
�[0;32m---> 69�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mviewer�[49m�[38;5;241;43m.�[39;49m�[43mlayers�[49m�[38;5;241;43m.�[39;49m�[43mremove�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mannotator�[49m�[38;5;241;43m.�[39;49m�[43msurface_layer�[49m�[43m)�[49m
self.annotator �[0;34m= <napari_threedee.annotators.spheres.annotator.SphereAnnotator object at 0x754b342d3460>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs.pick.spheres.PickSpheresWidget object at 0x754bc9f0c430>�[0m�[0;34m
�[0mself.viewer.layers �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mself.annotator.surface_layer �[0;34m= None�[0m�[0;34m
�[0mself.viewer �[0;34m= Viewer(camera=Camera(center=(134.25097504957012, 624.4804183213577, 472.5304129756257), zoom=1.6198914971997482, angles=(-19.093573125126735, 15.977671555947397, 137.60177770462866), perspective=0.0, mouse_pan=True, mouse_zoom=True), cursor=Cursor(position=(138.31620318898487, 580.496436869052, 595.5458249047225), scaled=True, size=1, style=<CursorStyle.STANDARD: 'standard'>), dims=Dims(ndim=3, ndisplay=3, last_used=0, range=((0.0, 296.0, 1.0), (0.0, 1270.0, 1.0), (0.0, 952.0, 1.0)), current_step=(147, 634, 475), order=(0, 1, 2), axis_labels=('0', '1', '2')), grid=GridCanvas(stride=1, shape=(-1, -1), enabled=False), layers=[<Image layer 'tomogram' at 0x754b844d82e0>], help='use <2> for transform', status={'layer_base': 'tomogram', 'source_type': '', 'plugin': '', 'coordinates': ' [138 580 596]'}, tooltip=Tooltip(visible=False, text=''), theme='dark', title='napari', mouse_over_canvas=True, mouse_move_callbacks=[], mouse_drag_callbacks=[], mouse_double_click_callbacks=[], mouse_wheel_callbacks=[<function dims_scroll at 0x754bd67603a0>], _persisted_mouse_event={}, _mouse_drag_gen={}, _mouse_wheel_gen={}, keymap={'[': <bound method TomogramBrowserWidget.previous_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>, ']': <bound method TomogramBrowserWidget.next_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>})�[0m
�[1;32m 70�[0m �[38;5;28;01mtry�[39;00m:
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/_collections_abc.py:1163�[0m, in �[0;36mMutableSequence.remove�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=None)�[0m
�[1;32m 1160�[0m �[38;5;250m�[39m�[38;5;124;03m'''S.remove(value) -- remove first occurrence of value.�[39;00m
�[1;32m 1161�[0m �[38;5;124;03m Raise ValueError if the value is not present.�[39;00m
�[1;32m 1162�[0m �[38;5;124;03m'''�[39;00m
�[0;32m-> 1163�[0m �[38;5;28;01mdel�[39;00m �[38;5;28mself�[39m[�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mindex�[49m�[43m(�[49m�[43mvalue�[49m�[43m)�[49m]
self �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mvalue �[0;34m= None�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230�[0m, in �[0;36mTypedMutableSequence.index�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=None, start=0, stop=None)�[0m
�[1;32m 228�[0m �[38;5;28;01mreturn�[39;00m i
�[0;32m--> 230�[0m �[38;5;28;01mraise�[39;00m �[38;5;167;01mValueError�[39;00m(
trans �[0;34m= <napari.utils.translations.TranslationBundle object at 0x754bddab8c70>�[0m�[0;34m
�[0mvalue �[0;34m= None�[0m
�[1;32m 231�[0m trans�[38;5;241m.�[39m_(
�[1;32m 232�[0m �[38;5;124m"�[39m�[38;5;132;01m{value!r}�[39;00m�[38;5;124m is not in list�[39m�[38;5;124m"�[39m,
�[1;32m 233�[0m deferred�[38;5;241m=�[39m�[38;5;28;01mTrue�[39;00m,
�[1;32m 234�[0m value�[38;5;241m=�[39mvalue,
�[1;32m 235�[0m )
�[1;32m 236�[0m )
�[0;31mValueError�[0m: None is not in list
The above exception was the direct cause of the following exception:
�[0;31mEmitLoopError�[0m Traceback (most recent call last)
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:69�[0m, in �[0;36mTomogramBrowserWidget._on_tomogram_selection_change�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>)�[0m
�[1;32m 67�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mchanging_tomogram�[38;5;241m.�[39memit()
�[1;32m 68�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mselected_tilt_series �[38;5;241m=�[39m �[38;5;28mself�[39m�[38;5;241m.�[39mtilt_series_list_widget�[38;5;241m.�[39mselected_tilt_series_in_view()
�[0;32m---> 69�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_load_tomogram�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mselected_tilt_series�[49m�[38;5;241;43m.�[39;49m�[43mname�[49m�[43m,�[49m�[43m �[49m�[43madd_to_viewer�[49m�[38;5;241;43m=�[39;49m�[38;5;28;43;01mTrue�[39;49;00m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
�[1;32m 70�[0m �[38;5;28mself�[39m�[38;5;241m.�[39m_preload_next_tomograms()
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:88�[0m, in �[0;36mTomogramBrowserWidget._load_tomogram�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tilt_series_id='AQB1tomo006', add_to_viewer=True)�[0m
�[1;32m 86�[0m �[38;5;28;01mdef�[39;00m �[38;5;21m_load_tomogram�[39m(�[38;5;28mself�[39m, tilt_series_id: �[38;5;28mstr�[39m, add_to_viewer: �[38;5;28mbool�[39m) �[38;5;241m-�[39m�[38;5;241m>�[39m �[38;5;28;01mNone�[39;00m:
�[1;32m 87�[0m �[38;5;28;01mif�[39;00m tilt_series_id �[38;5;129;01min�[39;00m �[38;5;28mself�[39m�[38;5;241m.�[39m_cache:
�[0;32m---> 88�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_load_tomogram_from_cache�[49m�[43m(�[49m�[43mtilt_series_id�[49m�[43m,�[49m�[43m �[49m�[43madd_to_viewer�[49m�[43m)�[49m
add_to_viewer �[0;34m= True�[0m�[0;34m
�[0mtilt_series_id �[0;34m= 'AQB1tomo006'�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
�[1;32m 89�[0m �[38;5;28;01mreturn�[39;00m
�[1;32m 90�[0m denoised_tomogram_file �[38;5;241m=�[39m �[38;5;28mself�[39m�[38;5;241m.�[39mtilt_series[tilt_series_id]�[38;5;241m.�[39mdenoised_tomogram_file
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:100�[0m, in �[0;36mTomogramBrowserWidget._load_tomogram_from_cache�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tilt_series_id='AQB1tomo006', add_to_viewer=True)�[0m
�[1;32m 98�[0m �[38;5;28;01mdef�[39;00m �[38;5;21m_load_tomogram_from_cache�[39m(�[38;5;28mself�[39m, tilt_series_id: �[38;5;28mstr�[39m, add_to_viewer: �[38;5;28mbool�[39m):
�[1;32m 99�[0m �[38;5;28;01mif�[39;00m add_to_viewer �[38;5;129;01mis�[39;00m �[38;5;28;01mTrue�[39;00m:
�[0;32m--> 100�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_update_tomogram_in_viewer�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_cache�[49m�[43m[�[49m�[43mtilt_series_id�[49m�[43m]�[49m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m�[0;34m
�[0mself._cache �[0;34m= {'AQB1tomo002': <class 'numpy.ndarray'> (296, 1270, 952) float32, 'AQB1tomo005': <class 'numpy.ndarray'> (296, 1270, 952) float32, 'AQB1tomo006': <class 'numpy.ndarray'> (296, 1270, 952) float32}�[0m�[0;34m
�[0mtilt_series_id �[0;34m= 'AQB1tomo006'�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:84�[0m, in �[0;36mTomogramBrowserWidget._update_tomogram_in_viewer�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tomogram=<class 'numpy.ndarray'> (296, 1270, 952) float32)�[0m
�[1;32m 75�[0m �[38;5;28;01melse�[39;00m:
�[1;32m 76�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39madd_image(
�[1;32m 77�[0m data�[38;5;241m=�[39mtomogram,
�[1;32m 78�[0m name�[38;5;241m=�[39mIMAGE_LAYER_NAME,
�[0;32m (...)�[0m
�[1;32m 82�[0m blending�[38;5;241m=�[39m�[38;5;124m'�[39m�[38;5;124mtranslucent�[39m�[38;5;124m'�[39m,
�[1;32m 83�[0m )
�[0;32m---> 84�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_on_tomogram_loaded�[49m�[43m(�[49m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:108�[0m, in �[0;36mTomogramBrowserWidget._on_tomogram_loaded�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>)�[0m
�[1;32m 106�[0m layer�[38;5;241m.�[39mplane�[38;5;241m.�[39mnormal �[38;5;241m=�[39m (�[38;5;241m1�[39m, �[38;5;241m0�[39m, �[38;5;241m0�[39m)
�[1;32m 107�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mselection �[38;5;241m=�[39m [layer]
�[0;32m--> 108�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mtomogram_changed�[49m�[38;5;241;43m.�[39;49m�[43memit�[49m�[43m(�[49m�[43m)�[49m
self.tomogram_changed �[0;34m= <SignalInstance 'tomogram_changed' on <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32msrc/psygnal/_signal.py:1176�[0m, in �[0;36memit�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1213�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1196�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1225�[0m, in �[0;36m_run_emit_loop_immediate�[0;34m()�[0m
File �[0;32msrc/psygnal/_weak_callback.py:453�[0m, in �[0;36mcb�[0;34m()�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/pick/spheres.py:69�[0m, in �[0;36mPickSpheresWidget.synchronise_annotator�[0;34m(self=<tomography_python_programs.pick.spheres.PickSpheresWidget object>)�[0m
�[1;32m 67�[0m �[38;5;28;01mif�[39;00m �[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer �[38;5;129;01mis�[39;00m �[38;5;129;01mnot�[39;00m �[38;5;28;01mNone�[39;00m:
�[1;32m 68�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mremove(�[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer)
�[0;32m---> 69�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mviewer�[49m�[38;5;241;43m.�[39;49m�[43mlayers�[49m�[38;5;241;43m.�[39;49m�[43mremove�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mannotator�[49m�[38;5;241;43m.�[39;49m�[43msurface_layer�[49m�[43m)�[49m
self.annotator �[0;34m= <napari_threedee.annotators.spheres.annotator.SphereAnnotator object at 0x754b342d3460>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs.pick.spheres.PickSpheresWidget object at 0x754bc9f0c430>�[0m�[0;34m
�[0mself.viewer.layers �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mself.annotator.surface_layer �[0;34m= None�[0m�[0;34m
�[0mself.viewer �[0;34m= Viewer(camera=Camera(center=(134.25097504957012, 624.4804183213577, 472.5304129756257), zoom=1.6198914971997482, angles=(-19.093573125126735, 15.977671555947397, 137.60177770462866), perspective=0.0, mouse_pan=True, mouse_zoom=True), cursor=Cursor(position=(138.31620318898487, 580.496436869052, 595.5458249047225), scaled=True, size=1, style=<CursorStyle.STANDARD: 'standard'>), dims=Dims(ndim=3, ndisplay=3, last_used=0, range=((0.0, 296.0, 1.0), (0.0, 1270.0, 1.0), (0.0, 952.0, 1.0)), current_step=(147, 634, 475), order=(0, 1, 2), axis_labels=('0', '1', '2')), grid=GridCanvas(stride=1, shape=(-1, -1), enabled=False), layers=[<Image layer 'tomogram' at 0x754b844d82e0>], help='use <2> for transform', status={'layer_base': 'tomogram', 'source_type': '', 'plugin': '', 'coordinates': ' [138 580 596]'}, tooltip=Tooltip(visible=False, text=''), theme='dark', title='napari', mouse_over_canvas=True, mouse_move_callbacks=[], mouse_drag_callbacks=[], mouse_double_click_callbacks=[], mouse_wheel_callbacks=[<function dims_scroll at 0x754bd67603a0>], _persisted_mouse_event={}, _mouse_drag_gen={}, _mouse_wheel_gen={}, keymap={'[': <bound method TomogramBrowserWidget.previous_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>, ']': <bound method TomogramBrowserWidget.next_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>})�[0m
�[1;32m 70�[0m �[38;5;28;01mtry�[39;00m:
�[1;32m 71�[0m n3d_spheres �[38;5;241m=�[39m �[38;5;28mself�[39m�[38;5;241m.�[39mload_particles()
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/_collections_abc.py:1163�[0m, in �[0;36mMutableSequence.remove�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=None)�[0m
�[1;32m 1159�[0m �[38;5;28;01mdef�[39;00m �[38;5;21mremove�[39m(�[38;5;28mself�[39m, value):
�[1;32m 1160�[0m �[38;5;250m �[39m�[38;5;124;03m'''S.remove(value) -- remove first occurrence of value.�[39;00m
�[1;32m 1161�[0m �[38;5;124;03m Raise ValueError if the value is not present.�[39;00m
�[1;32m 1162�[0m �[38;5;124;03m '''�[39;00m
�[0;32m-> 1163�[0m �[38;5;28;01mdel�[39;00m �[38;5;28mself�[39m[�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mindex�[49m�[43m(�[49m�[43mvalue�[49m�[43m)�[49m]
self �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mvalue �[0;34m= None�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230�[0m, in �[0;36mTypedMutableSequence.index�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=None, start=0, stop=None)�[0m
�[1;32m 227�[0m �[38;5;28;01mif�[39;00m v �[38;5;129;01mis�[39;00m value �[38;5;129;01mor�[39;00m v �[38;5;241m==�[39m value:
�[1;32m 228�[0m �[38;5;28;01mreturn�[39;00m i
�[0;32m--> 230�[0m �[38;5;28;01mraise�[39;00m �[38;5;167;01mValueError�[39;00m(
trans �[0;34m= <napari.utils.translations.TranslationBundle object at 0x754bddab8c70>�[0m�[0;34m
�[0mvalue �[0;34m= None�[0m
�[1;32m 231�[0m trans�[38;5;241m.�[39m_(
�[1;32m 232�[0m �[38;5;124m"�[39m�[38;5;132;01m{value!r}�[39;00m�[38;5;124m is not in list�[39m�[38;5;124m"�[39m,
�[1;32m 233�[0m deferred�[38;5;241m=�[39m�[38;5;28;01mTrue�[39;00m,
�[1;32m 234�[0m value�[38;5;241m=�[39mvalue,
�[1;32m 235�[0m )
�[1;32m 236�[0m )
�[0;31mEmitLoopError�[0m:
While emitting signal 'tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget.tomogram_changed', a ValueError occurred in a callback:
Signal emitted at: /home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:108, in _on_tomogram_loaded
> self.tomogram_changed.emit()
Callback error at: /home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230, in index
> raise ValueError(
Local variables:
value = None
start = 0
stop = None
convert = <function _noop at 0x754bddb0a5f0>
i = 0
v = <Image layer 'tomogram' at 0x754b844d82e0>
See ValueError above for original traceback.
�[0;31m---------------------------------------------------------------------------�[0m
�[0;31mValueError�[0m Traceback (most recent call last)
File �[0;32msrc/psygnal/_signal.py:1196�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1225�[0m, in �[0;36m_run_emit_loop_immediate�[0;34m()�[0m
File �[0;32msrc/psygnal/_weak_callback.py:453�[0m, in �[0;36mcb�[0;34m()�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/pick/spheres.py:68�[0m, in �[0;36mPickSpheresWidget.synchronise_annotator�[0;34m(self=<tomography_python_programs.pick.spheres.PickSpheresWidget object>)�[0m
�[1;32m 67�[0m �[38;5;28;01mif�[39;00m �[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer �[38;5;129;01mis�[39;00m �[38;5;129;01mnot�[39;00m �[38;5;28;01mNone�[39;00m:
�[0;32m---> 68�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mviewer�[49m�[38;5;241;43m.�[39;49m�[43mlayers�[49m�[38;5;241;43m.�[39;49m�[43mremove�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mpoints_layer�[49m�[43m)�[49m
self.points_layer �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs.pick.spheres.PickSpheresWidget object at 0x754bc9f0c430>�[0m�[0;34m
�[0mself.viewer.layers �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mself.viewer �[0;34m= Viewer(camera=Camera(center=(134.25097504957012, 624.4804183213577, 472.5304129756257), zoom=1.6198914971997482, angles=(-19.093573125126735, 15.977671555947397, 137.60177770462866), perspective=0.0, mouse_pan=True, mouse_zoom=True), cursor=Cursor(position=(168.02505784420777, 609.1196656123706, 591.684795982022), scaled=True, size=1, style=<CursorStyle.STANDARD: 'standard'>), dims=Dims(ndim=3, ndisplay=3, last_used=0, range=((0.0, 296.0, 1.0), (0.0, 1270.0, 1.0), (0.0, 952.0, 1.0)), current_step=(147, 634, 475), order=(0, 1, 2), axis_labels=('0', '1', '2')), grid=GridCanvas(stride=1, shape=(-1, -1), enabled=False), layers=[<Image layer 'tomogram' at 0x754b844d82e0>], help='use <2> for transform', status={'layer_base': 'tomogram', 'source_type': '', 'plugin': '', 'coordinates': ' [168 609 592]'}, tooltip=Tooltip(visible=False, text=''), theme='dark', title='napari', mouse_over_canvas=True, mouse_move_callbacks=[], mouse_drag_callbacks=[], mouse_double_click_callbacks=[], mouse_wheel_callbacks=[<function dims_scroll at 0x754bd67603a0>], _persisted_mouse_event={}, _mouse_drag_gen={}, _mouse_wheel_gen={}, keymap={'[': <bound method TomogramBrowserWidget.previous_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>, ']': <bound method TomogramBrowserWidget.next_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>})�[0m
�[1;32m 69�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mremove(�[38;5;28mself�[39m�[38;5;241m.�[39mannotator�[38;5;241m.�[39msurface_layer)
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/_collections_abc.py:1163�[0m, in �[0;36mMutableSequence.remove�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>)�[0m
�[1;32m 1160�[0m �[38;5;250m�[39m�[38;5;124;03m'''S.remove(value) -- remove first occurrence of value.�[39;00m
�[1;32m 1161�[0m �[38;5;124;03m Raise ValueError if the value is not present.�[39;00m
�[1;32m 1162�[0m �[38;5;124;03m'''�[39;00m
�[0;32m-> 1163�[0m �[38;5;28;01mdel�[39;00m �[38;5;28mself�[39m[�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mindex�[49m�[43m(�[49m�[43mvalue�[49m�[43m)�[49m]
self �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230�[0m, in �[0;36mTypedMutableSequence.index�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>, start=0, stop=None)�[0m
�[1;32m 228�[0m �[38;5;28;01mreturn�[39;00m i
�[0;32m--> 230�[0m �[38;5;28;01mraise�[39;00m �[38;5;167;01mValueError�[39;00m(
trans �[0;34m= <napari.utils.translations.TranslationBundle object at 0x754bddab8c70>�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
�[1;32m 231�[0m trans�[38;5;241m.�[39m_(
�[1;32m 232�[0m �[38;5;124m"�[39m�[38;5;132;01m{value!r}�[39;00m�[38;5;124m is not in list�[39m�[38;5;124m"�[39m,
�[1;32m 233�[0m deferred�[38;5;241m=�[39m�[38;5;28;01mTrue�[39;00m,
�[1;32m 234�[0m value�[38;5;241m=�[39mvalue,
�[1;32m 235�[0m )
�[1;32m 236�[0m )
�[0;31mValueError�[0m: <Points layer 'n3d spheres' at 0x754b7846c400> is not in list
The above exception was the direct cause of the following exception:
�[0;31mEmitLoopError�[0m Traceback (most recent call last)
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:69�[0m, in �[0;36mTomogramBrowserWidget._on_tomogram_selection_change�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>)�[0m
�[1;32m 67�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mchanging_tomogram�[38;5;241m.�[39memit()
�[1;32m 68�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mselected_tilt_series �[38;5;241m=�[39m �[38;5;28mself�[39m�[38;5;241m.�[39mtilt_series_list_widget�[38;5;241m.�[39mselected_tilt_series_in_view()
�[0;32m---> 69�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_load_tomogram�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mselected_tilt_series�[49m�[38;5;241;43m.�[39;49m�[43mname�[49m�[43m,�[49m�[43m �[49m�[43madd_to_viewer�[49m�[38;5;241;43m=�[39;49m�[38;5;28;43;01mTrue�[39;49;00m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
�[1;32m 70�[0m �[38;5;28mself�[39m�[38;5;241m.�[39m_preload_next_tomograms()
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:96�[0m, in �[0;36mTomogramBrowserWidget._load_tomogram�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tilt_series_id='AQB1tomo008', add_to_viewer=True)�[0m
�[1;32m 94�[0m �[38;5;28mself�[39m�[38;5;241m.�[39m_cache[tilt_series_id] �[38;5;241m=�[39m tomogram
�[1;32m 95�[0m �[38;5;28;01mif�[39;00m add_to_viewer:
�[0;32m---> 96�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_update_tomogram_in_viewer�[49m�[43m(�[49m�[43mtomogram�[49m�[43m)�[49m
tomogram �[0;34m= <class 'numpy.ndarray'> (296, 1270, 952) float32�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:84�[0m, in �[0;36mTomogramBrowserWidget._update_tomogram_in_viewer�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tomogram=<class 'numpy.ndarray'> (296, 1270, 952) float32)�[0m
�[1;32m 75�[0m �[38;5;28;01melse�[39;00m:
�[1;32m 76�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39madd_image(
�[1;32m 77�[0m data�[38;5;241m=�[39mtomogram,
�[1;32m 78�[0m name�[38;5;241m=�[39mIMAGE_LAYER_NAME,
�[0;32m (...)�[0m
�[1;32m 82�[0m blending�[38;5;241m=�[39m�[38;5;124m'�[39m�[38;5;124mtranslucent�[39m�[38;5;124m'�[39m,
�[1;32m 83�[0m )
�[0;32m---> 84�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_on_tomogram_loaded�[49m�[43m(�[49m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:108�[0m, in �[0;36mTomogramBrowserWidget._on_tomogram_loaded�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>)�[0m
�[1;32m 106�[0m layer�[38;5;241m.�[39mplane�[38;5;241m.�[39mnormal �[38;5;241m=�[39m (�[38;5;241m1�[39m, �[38;5;241m0�[39m, �[38;5;241m0�[39m)
�[1;32m 107�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mselection �[38;5;241m=�[39m [layer]
�[0;32m--> 108�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mtomogram_changed�[49m�[38;5;241;43m.�[39;49m�[43memit�[49m�[43m(�[49m�[43m)�[49m
self.tomogram_changed �[0;34m= <SignalInstance 'tomogram_changed' on <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32msrc/psygnal/_signal.py:1176�[0m, in �[0;36memit�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1213�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1196�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1225�[0m, in �[0;36m_run_emit_loop_immediate�[0;34m()�[0m
File �[0;32msrc/psygnal/_weak_callback.py:453�[0m, in �[0;36mcb�[0;34m()�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/pick/spheres.py:68�[0m, in �[0;36mPickSpheresWidget.synchronise_annotator�[0;34m(self=<tomography_python_programs.pick.spheres.PickSpheresWidget object>)�[0m
�[1;32m 66�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mannotator�[38;5;241m.�[39menabled �[38;5;241m=�[39m �[38;5;28;01mFalse�[39;00m
�[1;32m 67�[0m �[38;5;28;01mif�[39;00m �[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer �[38;5;129;01mis�[39;00m �[38;5;129;01mnot�[39;00m �[38;5;28;01mNone�[39;00m:
�[0;32m---> 68�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mviewer�[49m�[38;5;241;43m.�[39;49m�[43mlayers�[49m�[38;5;241;43m.�[39;49m�[43mremove�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mpoints_layer�[49m�[43m)�[49m
self.points_layer �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs.pick.spheres.PickSpheresWidget object at 0x754bc9f0c430>�[0m�[0;34m
�[0mself.viewer.layers �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mself.viewer �[0;34m= Viewer(camera=Camera(center=(134.25097504957012, 624.4804183213577, 472.5304129756257), zoom=1.6198914971997482, angles=(-19.093573125126735, 15.977671555947397, 137.60177770462866), perspective=0.0, mouse_pan=True, mouse_zoom=True), cursor=Cursor(position=(168.02505784420777, 609.1196656123706, 591.684795982022), scaled=True, size=1, style=<CursorStyle.STANDARD: 'standard'>), dims=Dims(ndim=3, ndisplay=3, last_used=0, range=((0.0, 296.0, 1.0), (0.0, 1270.0, 1.0), (0.0, 952.0, 1.0)), current_step=(147, 634, 475), order=(0, 1, 2), axis_labels=('0', '1', '2')), grid=GridCanvas(stride=1, shape=(-1, -1), enabled=False), layers=[<Image layer 'tomogram' at 0x754b844d82e0>], help='use <2> for transform', status={'layer_base': 'tomogram', 'source_type': '', 'plugin': '', 'coordinates': ' [168 609 592]'}, tooltip=Tooltip(visible=False, text=''), theme='dark', title='napari', mouse_over_canvas=True, mouse_move_callbacks=[], mouse_drag_callbacks=[], mouse_double_click_callbacks=[], mouse_wheel_callbacks=[<function dims_scroll at 0x754bd67603a0>], _persisted_mouse_event={}, _mouse_drag_gen={}, _mouse_wheel_gen={}, keymap={'[': <bound method TomogramBrowserWidget.previous_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>, ']': <bound method TomogramBrowserWidget.next_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>})�[0m
�[1;32m 69�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mremove(�[38;5;28mself�[39m�[38;5;241m.�[39mannotator�[38;5;241m.�[39msurface_layer)
�[1;32m 70�[0m �[38;5;28;01mtry�[39;00m:
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/_collections_abc.py:1163�[0m, in �[0;36mMutableSequence.remove�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>)�[0m
�[1;32m 1159�[0m �[38;5;28;01mdef�[39;00m �[38;5;21mremove�[39m(�[38;5;28mself�[39m, value):
�[1;32m 1160�[0m �[38;5;250m �[39m�[38;5;124;03m'''S.remove(value) -- remove first occurrence of value.�[39;00m
�[1;32m 1161�[0m �[38;5;124;03m Raise ValueError if the value is not present.�[39;00m
�[1;32m 1162�[0m �[38;5;124;03m '''�[39;00m
�[0;32m-> 1163�[0m �[38;5;28;01mdel�[39;00m �[38;5;28mself�[39m[�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mindex�[49m�[43m(�[49m�[43mvalue�[49m�[43m)�[49m]
self �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230�[0m, in �[0;36mTypedMutableSequence.index�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>, start=0, stop=None)�[0m
�[1;32m 227�[0m �[38;5;28;01mif�[39;00m v �[38;5;129;01mis�[39;00m value �[38;5;129;01mor�[39;00m v �[38;5;241m==�[39m value:
�[1;32m 228�[0m �[38;5;28;01mreturn�[39;00m i
�[0;32m--> 230�[0m �[38;5;28;01mraise�[39;00m �[38;5;167;01mValueError�[39;00m(
trans �[0;34m= <napari.utils.translations.TranslationBundle object at 0x754bddab8c70>�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
�[1;32m 231�[0m trans�[38;5;241m.�[39m_(
�[1;32m 232�[0m �[38;5;124m"�[39m�[38;5;132;01m{value!r}�[39;00m�[38;5;124m is not in list�[39m�[38;5;124m"�[39m,
�[1;32m 233�[0m deferred�[38;5;241m=�[39m�[38;5;28;01mTrue�[39;00m,
�[1;32m 234�[0m value�[38;5;241m=�[39mvalue,
�[1;32m 235�[0m )
�[1;32m 236�[0m )
�[0;31mEmitLoopError�[0m:
While emitting signal 'tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget.tomogram_changed', a ValueError occurred in a callback:
Signal emitted at: /home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:108, in _on_tomogram_loaded
> self.tomogram_changed.emit()
Callback error at: /home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230, in index
> raise ValueError(
Local variables:
value = <Points layer 'n3d spheres' at 0x754b7846c400>
start = 0
stop = None
convert = <function _noop at 0x754bddb0a5f0>
i = 0
v = <Image layer 'tomogram' at 0x754b844d82e0>
See ValueError above for original traceback.
�[0;31m---------------------------------------------------------------------------�[0m
�[0;31mValueError�[0m Traceback (most recent call last)
File �[0;32msrc/psygnal/_signal.py:1196�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1225�[0m, in �[0;36m_run_emit_loop_immediate�[0;34m()�[0m
File �[0;32msrc/psygnal/_weak_callback.py:453�[0m, in �[0;36mcb�[0;34m()�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/pick/spheres.py:68�[0m, in �[0;36mPickSpheresWidget.synchronise_annotator�[0;34m(self=<tomography_python_programs.pick.spheres.PickSpheresWidget object>)�[0m
�[1;32m 67�[0m �[38;5;28;01mif�[39;00m �[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer �[38;5;129;01mis�[39;00m �[38;5;129;01mnot�[39;00m �[38;5;28;01mNone�[39;00m:
�[0;32m---> 68�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mviewer�[49m�[38;5;241;43m.�[39;49m�[43mlayers�[49m�[38;5;241;43m.�[39;49m�[43mremove�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mpoints_layer�[49m�[43m)�[49m
self.points_layer �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs.pick.spheres.PickSpheresWidget object at 0x754bc9f0c430>�[0m�[0;34m
�[0mself.viewer.layers �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mself.viewer �[0;34m= Viewer(camera=Camera(center=(134.25097504957012, 624.4804183213577, 472.5304129756257), zoom=1.6198914971997482, angles=(-19.093573125126735, 15.977671555947397, 137.60177770462866), perspective=0.0, mouse_pan=True, mouse_zoom=True), cursor=Cursor(position=(168.65673457295958, 610.490941355705, 589.6356189088904), scaled=True, size=1, style=<CursorStyle.STANDARD: 'standard'>), dims=Dims(ndim=3, ndisplay=3, last_used=0, range=((0.0, 296.0, 1.0), (0.0, 1270.0, 1.0), (0.0, 952.0, 1.0)), current_step=(147, 634, 475), order=(0, 1, 2), axis_labels=('0', '1', '2')), grid=GridCanvas(stride=1, shape=(-1, -1), enabled=False), layers=[<Image layer 'tomogram' at 0x754b844d82e0>], help='use <2> for transform', status={'layer_base': 'tomogram', 'source_type': '', 'plugin': '', 'coordinates': ' [169 610 590]'}, tooltip=Tooltip(visible=False, text=''), theme='dark', title='napari', mouse_over_canvas=True, mouse_move_callbacks=[], mouse_drag_callbacks=[], mouse_double_click_callbacks=[], mouse_wheel_callbacks=[<function dims_scroll at 0x754bd67603a0>], _persisted_mouse_event={}, _mouse_drag_gen={}, _mouse_wheel_gen={}, keymap={'[': <bound method TomogramBrowserWidget.previous_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>, ']': <bound method TomogramBrowserWidget.next_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>})�[0m
�[1;32m 69�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mremove(�[38;5;28mself�[39m�[38;5;241m.�[39mannotator�[38;5;241m.�[39msurface_layer)
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/_collections_abc.py:1163�[0m, in �[0;36mMutableSequence.remove�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>)�[0m
�[1;32m 1160�[0m �[38;5;250m�[39m�[38;5;124;03m'''S.remove(value) -- remove first occurrence of value.�[39;00m
�[1;32m 1161�[0m �[38;5;124;03m Raise ValueError if the value is not present.�[39;00m
�[1;32m 1162�[0m �[38;5;124;03m'''�[39;00m
�[0;32m-> 1163�[0m �[38;5;28;01mdel�[39;00m �[38;5;28mself�[39m[�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mindex�[49m�[43m(�[49m�[43mvalue�[49m�[43m)�[49m]
self �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230�[0m, in �[0;36mTypedMutableSequence.index�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>, start=0, stop=None)�[0m
�[1;32m 228�[0m �[38;5;28;01mreturn�[39;00m i
�[0;32m--> 230�[0m �[38;5;28;01mraise�[39;00m �[38;5;167;01mValueError�[39;00m(
trans �[0;34m= <napari.utils.translations.TranslationBundle object at 0x754bddab8c70>�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
�[1;32m 231�[0m trans�[38;5;241m.�[39m_(
�[1;32m 232�[0m �[38;5;124m"�[39m�[38;5;132;01m{value!r}�[39;00m�[38;5;124m is not in list�[39m�[38;5;124m"�[39m,
�[1;32m 233�[0m deferred�[38;5;241m=�[39m�[38;5;28;01mTrue�[39;00m,
�[1;32m 234�[0m value�[38;5;241m=�[39mvalue,
�[1;32m 235�[0m )
�[1;32m 236�[0m )
�[0;31mValueError�[0m: <Points layer 'n3d spheres' at 0x754b7846c400> is not in list
The above exception was the direct cause of the following exception:
�[0;31mEmitLoopError�[0m Traceback (most recent call last)
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:69�[0m, in �[0;36mTomogramBrowserWidget._on_tomogram_selection_change�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>)�[0m
�[1;32m 67�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mchanging_tomogram�[38;5;241m.�[39memit()
�[1;32m 68�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mselected_tilt_series �[38;5;241m=�[39m �[38;5;28mself�[39m�[38;5;241m.�[39mtilt_series_list_widget�[38;5;241m.�[39mselected_tilt_series_in_view()
�[0;32m---> 69�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_load_tomogram�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mselected_tilt_series�[49m�[38;5;241;43m.�[39;49m�[43mname�[49m�[43m,�[49m�[43m �[49m�[43madd_to_viewer�[49m�[38;5;241;43m=�[39;49m�[38;5;28;43;01mTrue�[39;49;00m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
�[1;32m 70�[0m �[38;5;28mself�[39m�[38;5;241m.�[39m_preload_next_tomograms()
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:96�[0m, in �[0;36mTomogramBrowserWidget._load_tomogram�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tilt_series_id='AQB1tomo012', add_to_viewer=True)�[0m
�[1;32m 94�[0m �[38;5;28mself�[39m�[38;5;241m.�[39m_cache[tilt_series_id] �[38;5;241m=�[39m tomogram
�[1;32m 95�[0m �[38;5;28;01mif�[39;00m add_to_viewer:
�[0;32m---> 96�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_update_tomogram_in_viewer�[49m�[43m(�[49m�[43mtomogram�[49m�[43m)�[49m
tomogram �[0;34m= <class 'numpy.ndarray'> (296, 1270, 952) float32�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:84�[0m, in �[0;36mTomogramBrowserWidget._update_tomogram_in_viewer�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>, tomogram=<class 'numpy.ndarray'> (296, 1270, 952) float32)�[0m
�[1;32m 75�[0m �[38;5;28;01melse�[39;00m:
�[1;32m 76�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39madd_image(
�[1;32m 77�[0m data�[38;5;241m=�[39mtomogram,
�[1;32m 78�[0m name�[38;5;241m=�[39mIMAGE_LAYER_NAME,
�[0;32m (...)�[0m
�[1;32m 82�[0m blending�[38;5;241m=�[39m�[38;5;124m'�[39m�[38;5;124mtranslucent�[39m�[38;5;124m'�[39m,
�[1;32m 83�[0m )
�[0;32m---> 84�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43m_on_tomogram_loaded�[49m�[43m(�[49m�[43m)�[49m
self �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:108�[0m, in �[0;36mTomogramBrowserWidget._on_tomogram_loaded�[0;34m(self=<tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object>)�[0m
�[1;32m 106�[0m layer�[38;5;241m.�[39mplane�[38;5;241m.�[39mnormal �[38;5;241m=�[39m (�[38;5;241m1�[39m, �[38;5;241m0�[39m, �[38;5;241m0�[39m)
�[1;32m 107�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mselection �[38;5;241m=�[39m [layer]
�[0;32m--> 108�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mtomogram_changed�[49m�[38;5;241;43m.�[39;49m�[43memit�[49m�[43m(�[49m�[43m)�[49m
self.tomogram_changed �[0;34m= <SignalInstance 'tomogram_changed' on <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>�[0m
File �[0;32msrc/psygnal/_signal.py:1176�[0m, in �[0;36memit�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1213�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1196�[0m, in �[0;36m_run_emit_loop�[0;34m()�[0m
File �[0;32msrc/psygnal/_signal.py:1225�[0m, in �[0;36m_run_emit_loop_immediate�[0;34m()�[0m
File �[0;32msrc/psygnal/_weak_callback.py:453�[0m, in �[0;36mcb�[0;34m()�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/pick/spheres.py:68�[0m, in �[0;36mPickSpheresWidget.synchronise_annotator�[0;34m(self=<tomography_python_programs.pick.spheres.PickSpheresWidget object>)�[0m
�[1;32m 66�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mannotator�[38;5;241m.�[39menabled �[38;5;241m=�[39m �[38;5;28;01mFalse�[39;00m
�[1;32m 67�[0m �[38;5;28;01mif�[39;00m �[38;5;28mself�[39m�[38;5;241m.�[39mpoints_layer �[38;5;129;01mis�[39;00m �[38;5;129;01mnot�[39;00m �[38;5;28;01mNone�[39;00m:
�[0;32m---> 68�[0m �[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mviewer�[49m�[38;5;241;43m.�[39;49m�[43mlayers�[49m�[38;5;241;43m.�[39;49m�[43mremove�[49m�[43m(�[49m�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mpoints_layer�[49m�[43m)�[49m
self.points_layer �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m�[0;34m
�[0mself �[0;34m= <tomography_python_programs.pick.spheres.PickSpheresWidget object at 0x754bc9f0c430>�[0m�[0;34m
�[0mself.viewer.layers �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mself.viewer �[0;34m= Viewer(camera=Camera(center=(134.25097504957012, 624.4804183213577, 472.5304129756257), zoom=1.6198914971997482, angles=(-19.093573125126735, 15.977671555947397, 137.60177770462866), perspective=0.0, mouse_pan=True, mouse_zoom=True), cursor=Cursor(position=(168.65673457295958, 610.490941355705, 589.6356189088904), scaled=True, size=1, style=<CursorStyle.STANDARD: 'standard'>), dims=Dims(ndim=3, ndisplay=3, last_used=0, range=((0.0, 296.0, 1.0), (0.0, 1270.0, 1.0), (0.0, 952.0, 1.0)), current_step=(147, 634, 475), order=(0, 1, 2), axis_labels=('0', '1', '2')), grid=GridCanvas(stride=1, shape=(-1, -1), enabled=False), layers=[<Image layer 'tomogram' at 0x754b844d82e0>], help='use <2> for transform', status={'layer_base': 'tomogram', 'source_type': '', 'plugin': '', 'coordinates': ' [169 610 590]'}, tooltip=Tooltip(visible=False, text=''), theme='dark', title='napari', mouse_over_canvas=True, mouse_move_callbacks=[], mouse_drag_callbacks=[], mouse_double_click_callbacks=[], mouse_wheel_callbacks=[<function dims_scroll at 0x754bd67603a0>], _persisted_mouse_event={}, _mouse_drag_gen={}, _mouse_wheel_gen={}, keymap={'[': <bound method TomogramBrowserWidget.previous_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>, ']': <bound method TomogramBrowserWidget.next_tilt_series of <tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget object at 0x754bc9fe28c0>>})�[0m
�[1;32m 69�[0m �[38;5;28mself�[39m�[38;5;241m.�[39mviewer�[38;5;241m.�[39mlayers�[38;5;241m.�[39mremove(�[38;5;28mself�[39m�[38;5;241m.�[39mannotator�[38;5;241m.�[39msurface_layer)
�[1;32m 70�[0m �[38;5;28;01mtry�[39;00m:
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/_collections_abc.py:1163�[0m, in �[0;36mMutableSequence.remove�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>)�[0m
�[1;32m 1159�[0m �[38;5;28;01mdef�[39;00m �[38;5;21mremove�[39m(�[38;5;28mself�[39m, value):
�[1;32m 1160�[0m �[38;5;250m �[39m�[38;5;124;03m'''S.remove(value) -- remove first occurrence of value.�[39;00m
�[1;32m 1161�[0m �[38;5;124;03m Raise ValueError if the value is not present.�[39;00m
�[1;32m 1162�[0m �[38;5;124;03m '''�[39;00m
�[0;32m-> 1163�[0m �[38;5;28;01mdel�[39;00m �[38;5;28mself�[39m[�[38;5;28;43mself�[39;49m�[38;5;241;43m.�[39;49m�[43mindex�[49m�[43m(�[49m�[43mvalue�[49m�[43m)�[49m]
self �[0;34m= [<Image layer 'tomogram' at 0x754b844d82e0>]�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
File �[0;32m~/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230�[0m, in �[0;36mTypedMutableSequence.index�[0;34m(self=[<Image layer 'tomogram' at 0x754b844d82e0>], value=<Points layer 'n3d spheres'>, start=0, stop=None)�[0m
�[1;32m 227�[0m �[38;5;28;01mif�[39;00m v �[38;5;129;01mis�[39;00m value �[38;5;129;01mor�[39;00m v �[38;5;241m==�[39m value:
�[1;32m 228�[0m �[38;5;28;01mreturn�[39;00m i
�[0;32m--> 230�[0m �[38;5;28;01mraise�[39;00m �[38;5;167;01mValueError�[39;00m(
trans �[0;34m= <napari.utils.translations.TranslationBundle object at 0x754bddab8c70>�[0m�[0;34m
�[0mvalue �[0;34m= <Points layer 'n3d spheres' at 0x754b7846c400>�[0m
�[1;32m 231�[0m trans�[38;5;241m.�[39m_(
�[1;32m 232�[0m �[38;5;124m"�[39m�[38;5;132;01m{value!r}�[39;00m�[38;5;124m is not in list�[39m�[38;5;124m"�[39m,
�[1;32m 233�[0m deferred�[38;5;241m=�[39m�[38;5;28;01mTrue�[39;00m,
�[1;32m 234�[0m value�[38;5;241m=�[39mvalue,
�[1;32m 235�[0m )
�[1;32m 236�[0m )
�[0;31mEmitLoopError�[0m:
While emitting signal 'tomography_python_programs._qt.components.tomogram_browser.TomogramBrowserWidget.tomogram_changed', a ValueError occurred in a callback:
Signal emitted at: /home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/tomography_python_programs/_qt/components/tomogram_browser.py:108, in _on_tomogram_loaded
> self.tomogram_changed.emit()
Callback error at: /home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/napari/utils/events/containers/_typed.py:230, in index
> raise ValueError(
Local variables:
value = <Points layer 'n3d spheres' at 0x754b7846c400>
start = 0
stop = None
convert = <function _noop at 0x754bddb0a5f0>
i = 0
v = <Image layer 'tomogram' at 0x754b844d82e0>
See ValueError above for original traceback.
run.err
/home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/starfile/parser.py:177: FutureWarning: The 'delim_whitespace' keyword in pd.read_csv is deprecated and will be removed in a future version. Use ``sep='\s+'`` instead
df = pd.read_csv(
/home/michalakdj/mambaforge/envs/relion-5.0/lib/python3.10/site-packages/starfile/parser.py:194: FutureWarning: errors='ignore' is deprecated and will raise in a future version. Use to_numeric without passing `errors` and catch exceptions explicitly instead
self.dataframes[key] = df.apply(pd.to_numeric, errors='ignore')
The text was updated successfully, but these errors were encountered:
Describe your problem
When picking particles with spheres in napari, if no particles were picked in tomogram 1, then the
n3d spheres
layer disappears when pressing ']' to view tomogram 2. The layer does not disappear if a sphere was defined in tomogram 1. It seems that it expects the user to define a sphere in every tomogram. Therun.out
error message is more informative.Environment:
Job options:
note.txt
in the job directory):Error message:
run.out
run.err
The text was updated successfully, but these errors were encountered: