Skip to main content Skip to main navigation

Publication

Chaldene: Towards Visual Programming Image Processing in Jupyter Notebooks

Fei Chen; Philipp Slusallek; Martin Müller; Tim Dahmen (Hrsg.)
IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC-2022), located at VL/HCC 2022, September 12-16, Roma, Italy, ISBN 978-1-6654-4214-5, IEEE, 9/2022.

Abstract

Jupyter Notebook is an open source, interactive computing platform widely used in the scientific computing and artificial intelligence community. The popularity of the platform is a consequence of the generated single notebook document combining source code, markdown, and visualizations. This makes the platform ideal for tasks such as data analysis and scientific image processing, where repeatability and transparency of analysis tasks are just as important as functionality and performance. However, the obligatory use of code is an obstacle to acceptance of the platform in scientific communities where programming is not generally taught in the curriculum. Consequently, many experimental communities rely on manual image processing using graphical user interfaces. The obvious disadvantages are the lack of repeatability, transparency, and precision in image processing and data analysis tasks. To solve these issues, we propose to extend Jupyter Notebook with visual programming cells. In each visual programming cell, users can create the program by assembling graphical nodes that represent computational instructions, and the textual program is automatically generated and executed by the environment. Cells will support version control aware serialization and deserialization. The core innovation of our proposed work lies in a change of workflow and the adaption of a jupyter-based workflow in experimental communities that have no culture of working with source code. The system can be adapted to multiple applications and domains by integrating new node types. We hereby present an early version of the system and provide one use case from microscopy image processing to demonstrate the integration of existing non-Python software.

More links