Proceedings Article10.1109/vl/hcc53370.2022.9832910
Chaldene: Towards Visual Programming Image Processing in Jupyter Notebooks
Fei Chen,Philipp Slusallek,Martin Muller,Tim Dahmen +3 more
- 12 Sep 2022
2
TL;DR: Jupyter Notebook as mentioned in this paper is an open source, interactive computing platform widely used in the scientific computing and artificial intelligence community, where 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.
read more
Abstract: Jupyter Notebook [1] is an open source, interactive computing platform widely used in the scientific computing and artificial intelligence community [2], [3], [4], [5]. The popularity of the platform is a consequence of the generated single notebook document combining source code, markdown, and visualizations (Fig. 1). 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 [6], [7], [8]. 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.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Suppose You Had Blocks within a Notebook
Mauricio Verano Merino,Juan Pablo Sáenz,Ana María Díaz Castillo +2 more
- 29 Nov 2022
TL;DR: In this paper , a block-based approach is proposed to prevent syntactical errors and ease the non-expert developers' adoption of computational notebooks, which is based on two tools previously implemented (Bacatá and Kogi) to create a computational notebook for Domain-Specific Languages and generate a blockbased representation upon the language definition.
1
im2im: Automatically Converting In-Memory Image Representations using a Knowledge Graph Approach
Fei Chen,Sunita Saha,Manuela Schuler,Philipp Slusallek,Tim Dahmen +4 more
Abstract: Image processing workflows typically consist of a series of different functions, each working with “image” inputs and outputs in an abstract sense. However, the specific in-memory representation of images differs between and sometimes within libraries. Conversion is therefore necessary when integrating functions from several sources into a single program. The conversion process forces users to consider low-level implementation details, including data types, color channels, channel order, minibatch layout, memory locations, and pixel intensity ranges. Specifically in the case of visual programming languages (VPLs), this distracts from high-level operations. We introduce im2im, a Python library that automates the conversion of in-memory image representations. The central concept of this library is a knowledge graph that describes image representations and how to convert between them. The system queries this knowledge graph to generate the conversion code and execute it, converting an image to the desired representation. The effectiveness of the approach is evaluated through two case studies in VPLs. In each case, we compared a workflow created in a basic block-based VPL with the same workflow enhanced using im2im. These evaluations show that im2im automates type conversions and eliminates the need for manual intervention. Additionally, we compared the overhead of using explicit intermediate representations versus im2im, both of which avoid manual type conversions in VPLs. The results indicate that im2im generates only the necessary conversions, avoiding the runtime overhead associated with converting to and from intermediate formats. A performance comparison between the step-by-step approach used by im2im and a single-function approach demonstrates that the overhead introduced by im2im does not impact practical usability. While focused on block-based VPLs, im2im can be generalized to other VPLs and textual programming environments. Its principles are also applicable to domains other than images. The source code and analyses are available via GitHub.
References
Fiji: an open-source platform for biological-image analysis
Johannes Schindelin,Ignacio Arganda-Carreras,Erwin Frise,Verena Kaynig,Mark Longair,Tobias Pietzsch,Stephan Preibisch,Curtis Rueden,Stephan Saalfeld,Benjamin Schmid,Jean-Yves Tinevez,Daniel J. White,Volker Hartenstein,Kevin W. Eliceiri,Pavel Tomancak,Albert Cardona +15 more
TL;DR: Fiji is a distribution of the popular open-source software ImageJ focused on biological-image analysis that facilitates the transformation of new algorithms into ImageJ plugins that can be shared with end users through an integrated update system.
Jupyter Notebooks – a publishing format for reproducible computational workflows
Thomas Kluyver,Benjamin Ragan-Kelley,Fernando Perez,Brian E. Granger,Matthias Bussonnier,Jonathan Frederic,Kyle Kelley,Jessica B. Hamrick,Jason Grout,Sylvain Corlay,Paul Ivanov,Damián Avila,Safia Abdalla,Carol Willing +13 more
- 01 Jan 2016
TL;DR: Jupyter notebooks, a document format for publishing code, results and explanations in a form that is both readable and executable, is presented.
3.4K
Visual programming for next-generation sequencing data analytics
TL;DR: The potential of a computational framework blending generic template programming and visual programming that addresses all of the current limitations of NGS data generation and hypothesis testing is discussed.
The Ettention software package.
Tim Dahmen,Tim Dahmen,Lukas Marsalek,Nico Marniok,Beata Turoňová,Sviatoslav Bogachev,Patrick Trampert,Stefan Nickels,Philipp Slusallek +8 more
TL;DR: Ettention simultaneously features a modular, object-oriented software design, optimized access to high-performance computing platforms such as graphic processing units (GPU) or many-core architectures like Xeon Phi, and accessibility to microscopy end-users via integration in the IMOD package and eTomo user interface.
19
Interoperability in the OpenDreamKit Project: The Math-in-the-Middle Approach
Paul-Olivier Dehaye,Michael Kohlhase,Alexander Konovalov,Samuel Lelièvre,Markus Pfeiffer,Nicolas M. Thiéry +5 more
TL;DR: OpenDreamKit will deliver a flexible toolkit enabling research groups to set up Virtual Research Environments, customised to meet the varied needs of research projects in pure mathematics and applications.