Federico Bolelli



GRAPHGEN is an open-source framework for optimizing algorithms that can be modeled with decision tables, such as Connected Components Labeling, Thinning (Skeletonization), Chain-Code (Contour Tracing), and Morphological Operators. The framework allows to automatically apply many different optimization strategies to a given problem, taking as input its definition in terms of conditions to be checked and actions to be performed, and directly producing the C++ code including those optimizations as output.

ECVL - European Computer Vision Library

The European Computer Vision Library (ECVL in short) is an open-source library for Computer Vision and Image Processing that is under development in the framework of the DeepHealth H2020 European Project. Together with the European Deep Learning Library (EDDL), they represent the core elements of the DeepHealth toolkit, a unified framework completely adapted to exploit underlying heterogeneous High-Performance Computing (HPC) and Big Data architectures, to boost biomedical applications using state-of-the-art Deep Learning (DL) and Computer Vision (CV) algorithms.

YACCLAB - Yet Another Connected Components Labeling Benchmark

YACCLAB is an open source C++ benchmarking framework that allows to test Connected Components Labeling (CCL) algorithms under extremely variable points of view, running and testing different implementations on a collection of datasets covering most of the fields where CCL is commonly employed. The benchmark provides different kind of tests, supporting both 2D and 3D algorithms. The latest releases of YACCLAB also support GPU paradigms.

YACCLAB source code is available on GitHub. A detailed description of the benchmark can be found in three different research papers: Optimized Block-Based Algorithms to Label Connected Components on GPUs, Towards Reliable Experiments on the Performance of Connected Components Labeling Algorithms, and YACCLAB - Yet Another Connected Components Labeling Benchmark.

OLJ - OnLine Judge

OLJ is a Django based online automated judge for programming problems, mainly designed for C and C++ languages. Hosted at https://olj.ing.unimore.it, it is only accessible via Shibboleth accounts. The web application, developed during the global pandemic of COVID-19, was originally designed for the basic subjects of the Computer Engineering Degree at the University of Modena and Reggio Emilia. Along with the automated judge, OLJ provides a chat mechanism to easily communicate with students and a virtual proctor to monitor and record user desktop, thus becoming a suitable and useful tool for remote examinations. Quiz exams are also supported.


Tired of manually filling out dozens of identical forms for travel reimbursement, Michele Cancilla and I developed Missioni: a Django based web application available at https://missioni.ing.unimore.it. Missioni is accessible only through a Shibbolet account and it is mainly addressed to the "Enzo Ferrari" Department of Engineering staff. Nevertheless, the source code is available on GitHub and the application can be easily extended to many other forms types.

CO2 Hop Cannon

Arduino based hardware and software to automatically inflate CO2 in the fermentation tank during dry hopping, so as to maximize the effectiveness of the process and aroma extraction.

THeBE - THinning evaluation BEnchmark

THeBE is an open source C++ project developed using YACCLAB v2.0 as a starting point. It allows to compare thinning algorithms, highlighting strengths and weaknesses of different strategies available in literature. The source code is available on GitHub. A description of the benchmark can be found in the research paper Improving the Performance of Thinning Algorithms with Directed Rooted Acyclic Graphs.


Federico Bolelli, PhD

University of Modena & Reggio Emilia
Engineering Department "Enzo Ferrari"

Via P. Vivarelli 10
41125 Modena (MO), Italy
Building 27, Ground Floor, "Lab. Zero"

Tel. +39 059 205 8787
federico.bolelli _AT_ unimore.it