Spaces:
Sleeping
Sleeping
import os | |
import streamlit as st | |
import albumentations as A | |
from utils import load_augmentations_config, get_path_to_the_image | |
from visuals import ( | |
show_transform_control, | |
select_image, | |
show_credentials, | |
show_docstring, | |
) | |
# get the path to images | |
path_to_images = get_path_to_the_image() | |
if not os.path.isdir(path_to_images): | |
st.title("There is no directory: " + path_to_images) | |
else: | |
status, image = select_image(path_to_images) | |
if status == 0: | |
st.title("Can't load image from: " + path_to_images) | |
else: | |
# show title | |
st.title("Demo of Albumentations") | |
# select image | |
placeholder_params = { | |
"image_width": image.shape[1], | |
"image_height": image.shape[0], | |
"image_half_width": int(image.shape[1] / 2), | |
"image_half_height": int(image.shape[0] / 2), | |
} | |
# load the config | |
augmentations = load_augmentations_config( | |
placeholder_params, "configs/augmentations.json" | |
) | |
# select a transformation | |
transform_name = st.sidebar.selectbox( | |
"Select a transformation:", sorted(list(augmentations.keys())) | |
) | |
# select the params values | |
param_values = show_transform_control(augmentations[transform_name]) | |
# apply the transformation to the image | |
transform = getattr(A, transform_name)(**param_values) | |
data = A.ReplayCompose([transform])(image=image) | |
augmented_image = data["image"] | |
# TODO add convinient replay compose | |
# applied_params = data["replay"]["transforms"][0]['params'] | |
# for k,v in applied_params.items(): | |
# applied_params[k] = str(v) | |
# st.write(applied_params) | |
# st.write(data["replay"]) | |
# show the images | |
width_original = 400 | |
width_transformed = int( | |
width_original / image.shape[1] * augmented_image.shape[1] | |
) | |
st.image(image, caption="Original image", width=width_original) | |
st.image(augmented_image, caption="Transformed image", width=width_transformed) | |
# print additional info | |
st.code(str(transform)) | |
show_docstring(transform) | |
show_credentials() | |