FEET-GUI is a python qt-5 based application, designed to work comfortably with thermal feet images, more specifically, for characterizing epidural anesthesia performance during birth.
FEET-GUI is 200% cross plaftorm. It can be runned on any machine able to handle python3.9
and qt5
. This includes Windows, MacOS, GNU/Linux machines, BSD, and also ARM based OS's like Rasbperry PI OS, Manjaro ARM, etc.
Apps is strongly suggested not to be runned in anaconda-like environments, for those migth not have the latest version of libraries, cores and packages.
Suggested distros for running FEET-GUI in Raspberry PI 4 (top being the most suggested):
- Manjaro ARM KDE Plasma https://manjaro.org/downloads/arm/raspberry-pi-4/arm8-raspberry-pi-4-kde-plasma/
- Manjaro ARM XCFE https://manjaro.org/downloads/arm/raspberry-pi-4/arm8-raspberry-pi-4-xfce/
- ArchLinux ARM https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-4
- Raspberry PI OS (not sorted first for debian packages issues) https://www.raspberrypi.org/software/
For installing FEET-GUI on Windows you need to have python 3.9 installed in your system. The easy way to achieve this is simply typing python
in your PowerShell or CMD. If you don't have python installed, an instance of the official Microsoft Store will be opened to install the latest available python core.
Additionally, you might want to install git on your machine from https://git-scm.com/downloads.
After this, you are ready to run the native installation simply by lauching the feet-gui.bat
file (you can skip native installation).
If you are using amd64 or x86 architecture, then start by simply cloning the repository into your desired directory. Type in terminal (or PowerShell in Windows):
git clone https://github.com/blotero/FEET-GUI
cd FEET-GUI
Install requirements (make sure you have latest version of pip
by running pip install pip
).
pip install -r requirements.txt
Finally, run in arch-linux based distributions and Windows:
python main.py
Run in Debian based distributions:
python3 main.py
One of the requirements for feet-gui
is a module known as opencv-contrib-python-headless
which has conflict with the traditional opencv-python
package.
The reason for using the contrib-headless version is due to conflicts with the original version with the PySide package, for both (opencv and PySide2) packages, work on instantes with qt that are not compatible with each other.
For this reason, it is suggested to run feet-gui on a virtual environment (specially if you have installed other packages related to opencv or qt). This can be done in Linux as follows:
python -m venv feet-gui
source feet-gui/bin/activate
The resulting terminal-emulator state must look some like this:
Once you have done this, your shell should be working in this venv. If you had not previously cloned the repository, it is a good moment to do so, by following same steps as 2.2, and then installing the requirements with no dependencies issues.
FEET-GUI is thought to be lightweight and minimal, yet intuitive for obstetrics healthcare environments. Out of the box you will have a main window,
Feet-GUI is based on computer vision algorithms using different CNN architectures, which have been previously trained in with several architectures. All training process is avaliable in https://github.com/Rmejiaz/FEET_U-Net.
You can get some example models in https://drive.google.com/file/d/1-KLtcwjRtwhcib5pHKFOETuMyRsnyJTN/view?usp=sharing. Unzip this file, and then load the directory from File>>Load models (or Ctrl + Shift + O).
Once your models have been loaded, you should find them available in the right bottom side, where the Segmentation model combo box will display the found models. Observation: the directory you pick for your models can only contain models, otherwise any other file will be read as a model and will not be valid as a tensorflow model.
Finally, pick the model you want to test and press Load model, this might take a couple seconds depending on your hardware.
Now, keep in Input (entradas) tab, then, press Ctrl + O
to open a directory to a whole patient session (or File>>Open Folder). This path will now be the new default directory for opening images, and for full session processing tools. Make sure that images in this directory are jpg
format and named as t#.jpg
where # is the amount of minutes elapsed to the capture, for example, t15.jp
if 15minutes elapsed. Feet-GUI will use this to automatically set times later.
Once the direcotory is loaded, you will see a preview of the earliest in time found image (according to the naming rules).
If desired, you can import a single image instead of a whole session. Press Ctrl + I
and select the image file you want to work with (format must be png or jpg). If you previously made the Import folder action, the File Dialog shown should be in your established path, otherwise, cloned directory will be shown by default.
Note: by using this action, you can't use the tools for full session processing, like "full plot". This is only avaliable when your last opening action was opening a folder.
By pressing Segment button or Ctrl + F
to an already displaying image (loaded either with open folder or open image)), the AI model predicts segmentation area.
If you want to force scale values for highest and lowest intensities found in the image you can do so by changing the values in the Temperature scale frame and picking the custom mode, otherwise, these scale would be extracted automatically.
In case AI does not offer desired results, user can choose the manual segmentation. By pressing this button, a new Dialog Window will be opened for the user to make the segmentation area in two stages. (More on this in future versions)
If everything has been set up corectly, now you can get the mean temperatures and, if the Plot checkbox is set, you will also get the curves. You can press Ctrl + T
for this action. If Plot
is enabled, inmediately, a window will appear, showing the temperature curves based on the input images. It is important to have imported a directory, not an image.
By clicking the patient full plot button, a new dialog will open and show the entire sessions plot for all zones. This is only avaliable when a folder has been the last file opening action. (More on this in future versions)
Once you have done all processing, you can save your report as a pdf file by clicking the button "Export report". This action will only make sense if you have imported a whole directory with the correctly named files. If you execute this action without making all processing previously, it will be done automatically by default. (More on this in future versions)
FEET-GUI is developed in such a way that it can work as a research tool or a live tool in healthcare conditions.
As a research, diagnosis, or general interest tool for healthcare in obstetrics, FEET-GUI can work with preloaded images. With this purpose, the local design flow is thought to work robustly with simple local images, manually loaded by the user.
FEET-GUI is suitabe for ARM for a reason, and that is to achieve real time use during a real birth giving session in which an additional tool for detecting analgesia effects, might be required. For this design, the user will no longer require to manually load the image files, but instead will simply shoot the IR image during the session with the extensile hardware avaliable for this task (WHICH???).