Tullio Facchinetti

Frames Player and Analyzer for Optical Biological Ballistic Observations

by Luca Rogledi

Categories: article thesis lang_en article_en

Frames Player and Analyzer application

In the field of physiological research at the laboratory of Policlinico San Matteo of Pavia it was necessary to update the software used to assist the researchers in the study of the acto-myosin interaction. This is the work that led to the development of a program to perform such analysis.

Within this work three different approches have been explored in order to achieve this result: the Lucas Kanades optical flow, the linear assignment problem and the Kalman Filter.

Tools and Libraries

The application has been programmed with the Python language. The following tools and libraries have been used in this work:

Goal of the Analysis

The main goal of the application is to track multiple actin filaments, showing the path of each cell within an implemented GUI. For this purpose, the user is allowed to set the parameters used for this process such as threshold, minimum size and maximum distance travelled by each cell.

The user must be able to observe paths and study the data of each cell within the path. The program elaborates useful statistics related to the motion of the filaments.

Application Description

As can be seen in the picture, the GUI, which was created using Tkinter, contains the following “controls”:

Graphical User Interface
The Graphical User Interface of the program.

Application Features

The application allows to perform the analysis by changing among different frames in the sequences of acquired frames. The set of frames composing an acquisition can be selectes with File menu option Select Directory.

The user can select the desired paths to analyze using the File menu option Select Paths.

It is possible to highlight and identify a path using the Highlight Cell in the display menu options.


The application creates a results directory for each analyzed sequence. The directory contains 6 files with the following purpose:

The results.csv output file stores the data collected in each step of the sequence, including the x and y positions, x and y speeds and width and height of the actual bounding box of the cell. The bounding box is the smallest rectangle that contains a cell’s contour and its information are expressed in pixel. The x and y positions are expressed in micrometers [µm] and are necessary for the x and y speed computation in micrometers per second [µm/s].

Example of results file.

Similarly, the avg_results.csv contains information such as the speed-if-straight, which is the average speed of the path by supposing a strainght path, so considering only the first and the last position of the paths among all the frames. This is useful to assess the “linearity” of the movement. It also reports the avgerage speed of each path considering all changes in direction, the the length of the path, the first frame in which the path is detected in first-frame, and the initial x and y positions of the cell.

The graphs show the average area, speed and lenght data on the x axis and the number of related paths on the y axis. These graphs were a requirements of the reasearchers to allow them to get an immediate clue on the results of the acquisition.

Finally, the image obtained from the selection of desired paths reports the paths selected for the data analysis using the Select Paths GUI.


For the tracking of the actin filaments was observed that the Lucas Kanade optical flow was not the best solution due to the good features to track not being tracked. For this reason, a tracking was implemented using the Kalman filter in order to predict the position of the cell and associate it minimizing the distance to the new detection.


  • Students and theses
  • Publications
  • Thesis topics
  • Curated awesome list of CLI apps
  • Last updates (English)

  • Speed up the compilation of LaTex Beamer presentations ()
  • Students and theses ()
  • Students and theses - English ()
  • Learn enough C to survive ()
  • Workflow for writing theses collaboratively ()
  • Guidelines for theses and presentations ()
  • Projects ()
  • Last updates (Italian)

  • Risultati FdI 8 e 11 aprile 2024 ()
  • Risultati FdI 20 Febbraio 2024 ()
  • Risultati FdI 02 Febbraio 2024 ()
  • Risultati FdI 20-27 Novembre 2023 ()
  • Risultati FdI 28 Settembre 2023 ()
  • Risultati FdI 01 Settembre 2023 ()
  • Risultati FdI 27 Luglio 2023 ()
  • List of categories

    Article Article_en Article_it C Courses Fdi Lang_en Lang_it Latex Programming Project Research Results Robotics Software Teaching Thesis Tips