micasense / imageprocessing

MicaSense RedEdge and Altum image processing tutorials
https://www.micasense.com
MIT License
262 stars 152 forks source link

jupyter notebook when import micasense , there is error"ModuleNotFoundError: No module named 'micasense' #139

Closed hongyu123456 closed 3 years ago

hongyu123456 commented 3 years ago

when I try to process 'MicaSense Image Processing Setup',the 'Testing image reading and panel detection'will have error:'ModuleNotFoundError: No module named 'micasense''

I try to remove env and recreate for more times, but it not work.


pytest as follow:

F:>cd imageprocessing

F:\imageprocessing>activate micasense

(micasense) F:\imageprocessing>pytest ================================================= test session starts ================================================= platform win32 -- Python 3.7.9, pytest-6.2.2, py-1.10.0, pluggy-0.13.1 rootdir: F:\imageprocessing, configfile: pytest.ini, testpaths: tests plugins: forked-1.2.0, xdist-2.2.0 collected 135 items

tests\test_capture.py ..................................F........ [ 31%] tests\test_dls.py ................. [ 44%] tests\test_image.py ................. [ 57%] tests\test_imageset.py .... [ 60%] tests\test_imageutils.py ... [ 62%] tests\test_metadata.py .................................... [ 88%] tests\test_panel.py ............... [100%]

====================================================== FAILURES ======================================================= _____ test_save_thermal_over_rgb __

aligned_altum_capture = <micasense.capture.Capture object at 0x0000028015EC4208> tmpdir = local('C:\Users\names\AppData\Local\Temp\pytest-of-names\pytest-1\test_save_thermal_over_rgb0')

def test_save_thermal_over_rgb(aligned_altum_capture, tmpdir):
    pathstr = str(tmpdir.join('test_thermal_rgb.png'))
  aligned_altum_capture.save_thermal_over_rgb(pathstr)

tests\test_capture.py:245:


micasense\capture.py:488: in save_thermal_over_rgb show=False) micasense\plotutils.py:83: in plot_overlay_withcolorbar plt.tight_layout() F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\cbook\deprecation.py:451: in wrapper return func(*args, *kwargs) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\pyplot.py:1506: in tight_layout gcf().tight_layout(pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\cbook\deprecation.py:411: in wrapper return func(inner_args, **inner_kwargs) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\figure.py:2615: in tight_layout pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\tight_layout.py:308: in get_tight_layout_figure pad=pad, h_pad=h_pad, w_pad=w_pad) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\tight_layout.py:84: in auto_adjust_subplotpars bb += [ax.get_tightbbox(renderer, for_layout_only=True)] F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\axes_base.py:4154: in get_tightbbox renderer, for_layout_only=for_layout_only) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\axis.py:1111: in get_tightbbox self._update_label_position(renderer) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\axis.py:2061: in _update_label_position bboxes, bboxes2 = self._get_tick_boxes_siblings(renderer=renderer) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\axis.py:2046: in _get_tick_boxes_siblings tlb, tlb2 = axx.xaxis._get_tick_bboxes(ticks_to_draw, renderer) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\axis.py:1092: in _get_tick_bboxes for tick in ticks if tick.label1.get_visible()], F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\axis.py:1092: in for tick in ticks if tick.label1.get_visible()], F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\text.py:902: in get_window_extent bbox, info, descent = self._get_layout(self._renderer) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\text.py:289: in _get_layout ismath="TeX" if self.get_usetex() else False) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\backends\backend_agg.py:237: in get_text_width_height_descent font = self._get_agg_font(prop) F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\backends\backend_agg.py:273: in _get_agg_font font = get_font(fname)


filename = 'F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\mpl-data\fonts\ttf\DejaVuSans.ttf' hinting_factor = 8

def get_font(filename, hinting_factor=None):
    # Resolving the path avoids embedding the font twice in pdf/ps output if a
    # single font is selected using two different relative paths.
    filename = os.path.realpath(filename)
    if hinting_factor is None:
        hinting_factor = rcParams['text.hinting_factor']
    return _get_font(os.fspath(filename), hinting_factor,
                   _kerning_factor=rcParams['text.kerning_factor'])

E RuntimeError: In FT2Font: Can not load face (error code 0x55)

F:\Users\Vadmin\Anaconda3\envs\micasense\lib\site-packages\matplotlib\font_manager.py:1418: RuntimeError ================================================== warnings summary =================================================== micasense\dls.py:33 F:\imageprocessing\micasense\dls.py:33: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses import imp

tests/test_capture.py::test_panel_radiance F:\Users\Vadmin\Anaconda3\envs\micasense\lib\importlib_bootstrap.py:219: RuntimeWarning: numpy.ufunc size changed, may indicate binary incompatibility. Expected 192 from C header, got 216 from PyObject return f(*args, **kwds)

-- Docs: https://docs.pytest.org/en/stable/warnings.html =============================================== short test summary info =============================================== FAILED tests/test_capture.py::test_save_thermal_over_rgb - RuntimeError: In FT2Font: Can not load face (error code 0x55) ================================ 1 failed, 134 passed, 2 warnings in 170.84s (0:02:50) ================================

(micasense) F:\imageprocessing>

how can I deal it?

hongyu123456 commented 3 years ago

when i try to copy the file of'imageprocessing\micasense' to 'Anaconda3\envs', the error ''No module named 'micasense'' is disappear; but next is appear ''RuntimeError: In FT2Font: Can not load face (error code 0x55)'' .......

hongyu123456 commented 3 years ago

thanks, the finally error is ok ,when i 'conda update matplotlib' everything is great.