Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

import fails with OSError on headless system #15

Open
thawn opened this issue Aug 12, 2022 · 1 comment
Open

import fails with OSError on headless system #15

thawn opened this issue Aug 12, 2022 · 1 comment

Comments

@thawn
Copy link

thawn commented Aug 12, 2022

importing napari_simpleitk_image_processing fails with errors about missing GL libraries (see below). I assume this means that this plugin needs a working display?

is there a workaround to make this plugin work without gl support?

Cheers,

Till

`napari_simpleitk_image_processing` import errors ---------------------------------------------------------------------------

OSError Traceback (most recent call last)
Input In [6], in <cell line: 7>()
5 import numpy as np
6 #import napari_segment_blobs_and_things_with_membranes as nsbatwm
----> 7 import napari_simpleitk_image_processing as nsitk

File /app/env/lib/python3.9/site-packages/napari_simpleitk_image_processing/init.py:9, in
3 common_alias = "nsitk"
8 from ._function import napari_experimental_provide_function
----> 9 from ._simpleitk_image_processing import
10 plugin_function,
11 median_filter,
12 gaussian_blur,
13 threshold_otsu,
14 threshold_intermodes,
15 threshold_kittler_illingworth,
16 threshold_li,
17 threshold_moments,
18 threshold_renyi_entropy,
19 threshold_shanbhag,
20 threshold_yen,
21 threshold_isodata,
22 threshold_triangle,
23 threshold_huang,
24 threshold_maximum_entropy,
25 signed_maurer_distance_map,
26 morphological_watershed,
27 morphological_gradient,
28 standard_deviation_filter,
29 simple_linear_iterative_clustering,
30 scalar_image_k_means_clustering,
31 connected_component_labeling,
32 touching_objects_labeling,
33 watershed_otsu_labeling,
34 binary_fill_holes,
35 invert_intensity,
36 bilateral_filter,
37 laplacian_filter,
38 laplacian_of_gaussian_filter,
39 binominal_blur_filter,
40 canny_edge_detection,
41 gradient_magnitude,
42 h_maxima,
43 h_minima,
44 otsu_multiple_thresholds,
45 regional_maxima,
46 regional_minima,
47 richardson_lucy_deconvolution,
48 wiener_deconvolution,
49 tikhonov_deconvolution,
50 rescale_intensity,
51 sobel,
52 black_top_hat,
53 white_top_hat,
54 adaptive_histogram_equalization,
55 curvature_flow_denoise,
56 relabel_component,
57 label_contour,
58 label_statistics,
59 pixel_count_map,
60 elongation_map,
61 feret_diameter_map,
62 roundness_map

File /app/env/lib/python3.9/site-packages/napari_simpleitk_image_processing/_simpleitk_image_processing.py:7, in
5 from toolz import curry
6 import inspect
----> 7 from napari_tools_menu import register_function
8 from napari_time_slicer import time_slicer
9 from napari_skimage_regionprops._all_frames import analyze_all_frames

File /app/env/lib/python3.9/site-packages/napari_tools_menu/init.py:9, in
7 import warnings
8 import napari
----> 9 import napari._qt
10 import numpy as np
11 from qtpy.QtWidgets import QMenu

File /app/env/lib/python3.9/site-packages/napari/qt/init.py:53, in
45 warn_message = trans.
(
46 "\n\nnapari was tested with QT library >=5.12.3.\nThe version installed is {version}. Please report any issues with\nthis specific QT version at https://github.com/Napari/napari/issues. style="color:rgb(175,0,0)">",
47 deferred=True,
48 version=QtCore.version,
49 )
50 warn(message=warn_message)
---> 53 from .qt_event_loop import get_app, gui_qt, quit_app, run
54 from .qt_main_window import Window

File /app/env/lib/python3.9/site-packages/napari/_qt/qt_event_loop.py:15, in
12 from qtpy.QtWidgets import QApplication
14 from .. import version
---> 15 from ..settings import get_settings
16 from ..utils import config, perf
17 from ..utils.notifications import (
18 notification_manager,
19 show_console_notification,
20 )

File /app/env/lib/python3.9/site-packages/napari/settings/init.py:6, in
4 from ..utils.translations import trans
5 from ._base import _NOT_SET
----> 6 from ._napari_settings import NapariSettings
8 all = ['NapariSettings', 'get_settings']
11 class _SettingsProxy:

File /app/env/lib/python3.9/site-packages/napari/settings/_napari_settings.py:9, in
7 from ..utils._base import _DEFAULT_CONFIG_PATH
8 from ..utils.translations import trans
----> 9 from ._appearance import AppearanceSettings
10 from ._application import ApplicationSettings
11 from ._base import EventedConfigFileSettings, _remove_empty_dicts

File /app/env/lib/python3.9/site-packages/napari/settings/_appearance.py:4, in
1 from pydantic import Field
3 from ..utils.events.evented_model import EventedModel
----> 4 from ..utils.theme import available_themes
5 from ..utils.translations import trans
6 from ._fields import Theme

File /app/env/lib/python3.9/site-packages/napari/utils/init.py:2, in
1 from ._dask_utils import resize_dask_cache
----> 2 from .colormaps import Colormap
3 from .info import citation_text, sys_info
4 from .notebook_display import nbscreenshot

File /app/env/lib/python3.9/site-packages/napari/utils/colormaps/init.py:2, in
1 from .colorbars import make_colorbar
----> 2 from .colormap import Colormap
3 from .colormap_utils import (
4 ALL_COLORMAPS,
5 AVAILABLE_COLORMAPS,
(...)
16 matplotlib_colormaps,
17 )

File /app/env/lib/python3.9/site-packages/napari/utils/colormaps/colormap.py:11, in
9 from ..translations import trans
10 from .colorbars import make_colorbar
---> 11 from .standardize_color import transform_color
14 class ColormapInterpolationMode(str, Enum):
15 """INTERPOLATION: Interpolation mode for colormaps.
16
17 Selects an interpolation mode for the colormap.
(...)
21 bin between by neighboring controls points.
22 """

File /app/env/lib/python3.9/site-packages/napari/utils/colormaps/standardize_color.py:27, in
24 from typing import Any, Callable, Dict, Sequence
26 import numpy as np
---> 27 from vispy.color import ColorArray, get_color_dict, get_color_names
28 from vispy.color.color_array import _string_to_rgb
30 from ..translations import trans

File /app/env/lib/python3.9/site-packages/vispy/color/init.py:12, in
10 from ._color_dict import get_color_names, get_color_dict # noqa
11 from .color_array import Color, ColorArray
---> 12 from .colormap import (Colormap, BaseColormap, # noqa
13 get_colormap, get_colormaps) # noqa
15 all = ['Color', 'ColorArray', 'Colormap', 'BaseColormap',
16 'get_colormap', 'get_colormaps',
17 'get_color_names', 'get_color_dict']

File /app/env/lib/python3.9/site-packages/vispy/color/colormap.py:14, in
12 from hsluv import hsluv_to_rgb
13 from ..util.check_environment import has_matplotlib
---> 14 import vispy.gloo
16 ###############################################################################
17 # Color maps
18
19 # Length of the texture map used for luminance to RGBA conversion
20 LUT_len = 1024

File /app/env/lib/python3.9/site-packages/vispy/gloo/init.py:47, in
5 """
6 Object oriented interface to OpenGL.
7
(...)
42
43 """
45 from future import division
---> 47 from . import gl # noqa
48 from .wrappers import * # noqa
49 from .context import (GLContext, get_default_config, # noqa
50 get_current_canvas) # noqa

File /app/env/lib/python3.9/site-packages/vispy/gloo/gl/init.py:230, in
228 from . import gl2 as default_backend # noqa
229 if default_backend._lib is None: # Probably Android or RPi
--> 230 from . import es2 as default_backend # noqa
233 # Call use to start using our default backend
234 use_gl()

File /app/env/lib/python3.9/site-packages/vispy/gloo/gl/es2.py:48, in
46 # Else, we failed and exit
47 if es2_file is None:
---> 48 raise OSError('GL ES 2.0 library not found')
49 # Load it
50 _lib = ctypes.CDLL(es2_file)

OSError: GL ES 2.0 library not found

haesleinhuepf added a commit to haesleinhuepf/napari-tools-menu that referenced this issue Aug 27, 2022
@haesleinhuepf
Copy link
Owner

HI @thawn ,

this bug should be fixed in the recent release of nsitk. Can you check? If not, please let me know how I can reproduce the issue.

Thanks!
Best,
Robert

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants