0

I am trying to create a user-friendly Jupyter notebook that will enable students learning remotely to do academic labs from home. They'll be tasked with doing an experiment, taking a picture, and (hopefully) using some very simply image processing tools to measure things in these pictures. I would like the user to be able to load in an image, click two points on the image, which can be stored to measure their Euclidean distance. The purpose of the lab is not to learn image processing tools, nor will these students have any experience with image processing, so I prefer as simple and intuitive of a solution as possible.

The functionality I'm imagining is similar to what is built into ImageJ (I'm aware that there is a Python wrapper for ImageJ, but I haven't been able to get this to work for this task).

The things I've looked into:

  1. scikit-image: ImageViewer() - this is interesting, but does not have this measure feature
  2. mpldatacursor - couldn't load this into my Jupyter notebook, I need something everyone can import
  3. OpenCV - did not find much for interactive image processing, though still searching
  4. matplotlib.ginput - this throws a warning that requires matplotlib.use("TkAgg"), which crashes my Mac
  5. This similar solution, however it no longer gives works in my Juptyer notebook and I don't know why.

Any advice would be greatly appreciated.

dpholmes
  • 111
  • 3
  • Am i correct in understanding that you want a GUI that displays an image and stores selected pixel coordinates?https://www.pyimagesearch.com/2015/03/09/capturing-mouse-click-events-with-python-and-opencv/ – Jason Chia Apr 30 '20 at 14:20
  • yes, that's correct - i'm looking into the link you posted now, thanks! – dpholmes Apr 30 '20 at 14:31

0 Answers0