Aleksandra Cupriak, Agnieszka Kowalewska, Joanna Krawczyk
- Project description
- Main tasks
- Extra tasks
- Update
- Pipeline description
- Requirements
- Installation and launch
This is a final project for the Architecture of Large Projects in Bioinformatics course. The goal of the project is motivated by the struggle to analyse, convert and download phylogenetic trees found in scientific articles.
We propose Png Tree Converter - an online tool converting phylogenetic trees in image format (.png) to newick format. Our approach is based on custom image processing algorithms.
- Extract dendrogram structure from .png image for binary, rooted trees oriented vertically (having leaves at the bottom of the image).
- Extract leaf names.
- Write dendrogram data to a newick file.
- Create an online tool using
Streamlit
, - adjust the algorithm for different tree orientations,
- create online tree visualisations (toytree, biopython etc.).
We fulfilled all main tasks. The first task was also extended for trees
oriented horizontally.
We also succeeded in developing a Streamlit application working locally.
However, we cannot deploy our application on Streamlit
Community Cloud as proposed in extra tasks, since we use OpenCV
library which works on local computer,
but will fail as soon as we launch it on Streamlit Community Cloud
(explanation).
All the environment requirements are gathered in environment.yml
file. You can easily install a conda environment with all the necessary dependencies by running the command:
conda env create -f environment.yml
To run Streamlit locally on your computer, you need to:
- Activate
ptc
conda environment - Open the
browser/
folder in your terminal. - Paste
streamlit run main_page.py
. - Access the application via the localhost link printed in your terminal.