Package: interactive-kit
interactive-kitA toolkit for interactive visualization of signal and image processing onJupyterNotebooks.interactive-kitwas created to simplify visualization in image and signal processing teaching, learning and research. UsingJupyterNotebooks in combination withinteractive-kita user with virtually no programming experience, or without any experience withmatplotlib, will be able to display and manipulate one or several signals or images and interactively explore them. It is even possible to extract information and perform operations directly on the signal or image without the need to re-run the cell or to plot again.The class is designed to run in Jupyter Notebooks or Jupyter Lab, usingmatplotlib's dynamic widget-based environment (ipympl), which needs to be activated with the magic command%matplotlib widget. All the functionalities are controlled either throughmatplotlib's native widgets (zoom, pan, and change of figure size) or through additionalipywidgets-based buttons and sliders.ModulesImage Viewer(imviewer)Optimized for image visualization and manipulation. See the dedicatedtutorialandwiki.Main featuresOnce called, from theimviewerand using both widgets and programmatic commands, a user will be able to:Plot several images at the same time, and choose different display options (one image at a time, or a customized grid of images),Change the brightness and contrast of the images through a slider,Explore the histogram of the image,Choose different colormaps and visualization options (colorbar, axis),Get 1st and 2nd order statistics -updated automatically when zooming into a region- of the image,Calculate and visualize differences between two different images,Declare functions that perform operations on an image, and through custom widgets, see the effect of the function with different parameters applied on different images, directly inside theimviewerobject.Signal Viewer(sigviewer)Optimized for 1-dimensional signal  visualization and manipulation. See the dedicatedtutorialandwiki.Installation and usageFirst, make sure you have installed Python 3.6 or higher. Then,interactive-kitcan easily be installed through PyPI:pip install interactive-kit==0.1rc3To use in a jupyter notebook, you can import the modules in the following way:frominteractive_kitimportimviewer,sigviewerTeamThe viewer was developed at theEPFL's Biomedical Imaging Group, mainly byAlejandro Noguerón Aramburu (alejandro.nogueronaramburu@epfl.ch,Alejandro-1996)with contributions fromKay Lächler (kay.lachler@epfl.ch,TheUser0571)Pol del Aguila Pla, (pol.delaguilapla@epfl.ch,poldap)Daniel Sage, (daniel.sage@epfl.ch,dasv74)The development of the viewer was supported by theDigital Resources for Instruction and Learning (DRIL) Fundat EPFL, which supported the projectsIPLAB – Image Processing Laboratories on NotoandFeedbackNow – Automatic grading and formative feedback for image processing laboratoriesby Pol del Aguila Pla and Daniel Sage in the sprint and fall semesters of 2020, respectively. See the video below for more information.Members of the EPFL communityIf you want to start usinginteractive-kitrightaway, without going through the process of installing Python and Jupyter, you canclick hereand start using right away fromNoto, EPFL's Jupyter centralized platform.ContributionsWe appreciate contributions, feedback and bug reports from the community:If you encounter any bug, please open an issue and describe. We will try to fix it or give you a workaround as soon as possible.If you wish to contribute, fork the repository and then open a pull request.