Commit
·
9da5a1c
1
Parent(s):
abcddc5
Created base app to generate data and images for paper.
Browse files
app.py
CHANGED
|
@@ -1,40 +1,89 @@
|
|
| 1 |
-
|
| 2 |
|
| 3 |
import matplotlib.pyplot as plt
|
| 4 |
import numpy as np
|
| 5 |
-
|
| 6 |
-
from datasets import load_dataset, ClassLabel, Sequence
|
| 7 |
-
import json
|
| 8 |
-
import numpy
|
| 9 |
-
|
| 10 |
-
# from transformers import AutoImageProcessor
|
| 11 |
-
# from torchvision.transforms import RandomResizedCrop, Compose, Normalize, ToTensor
|
| 12 |
-
# from transformers import DefaultDataCollator
|
| 13 |
-
# # import evaluate
|
| 14 |
-
# import numpy as np
|
| 15 |
-
# from transformers import AutoModelForImageClassification, TrainingArguments, Trainer
|
| 16 |
-
# from PIL import Image
|
| 17 |
-
# from matplotlib import cm
|
| 18 |
|
| 19 |
import streamlit as st
|
| 20 |
from Data_Generation.Dataset_Generation_Functions import make_boxes
|
| 21 |
-
from Data_Generation.Piecewise_Box_Functions import basic_box_array
|
| 22 |
-
|
| 23 |
-
|
|
|
|
| 24 |
# st.write(x, 'squared is', x * x)
|
| 25 |
|
| 26 |
-
|
| 27 |
density_selection = st.slider('Select a value for the number of equally spaced density values (0, 1]', min_value=1, max_value=10)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
|
| 29 |
-
densities = pd.DataFrame(np.linspace(0,1, num=density_selection+1)[1:])
|
| 30 |
-
densities.columns = ["Density Values"]
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
st.write("Here are the density values that would exist in your dataset:")
|
| 34 |
-
st.write(densities)
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
example_density = basic_box_array(image_size, 1)
|
| 38 |
|
| 39 |
'''
|
| 40 |
# Testing
|
|
|
|
| 1 |
+
|
| 2 |
|
| 3 |
import matplotlib.pyplot as plt
|
| 4 |
import numpy as np
|
| 5 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 6 |
|
| 7 |
import streamlit as st
|
| 8 |
from Data_Generation.Dataset_Generation_Functions import make_boxes
|
| 9 |
+
from Data_Generation.Piecewise_Box_Functions import basic_box_array, forward_slash_array, combine_arrays, add_thickness
|
| 10 |
+
########################################################################################################################
|
| 11 |
+
# User Inputs
|
| 12 |
+
image_size = st.slider('Select a value for the image size', min_value=9, max_value=28)
|
| 13 |
# st.write(x, 'squared is', x * x)
|
| 14 |
|
|
|
|
| 15 |
density_selection = st.slider('Select a value for the number of equally spaced density values (0, 1]', min_value=1, max_value=10)
|
| 16 |
+
########################################################################################################################
|
| 17 |
+
# Compute Example Shapes
|
| 18 |
+
|
| 19 |
+
densities = np.linspace(0, 1, num=density_selection+1)[1:]
|
| 20 |
+
|
| 21 |
+
sample_basic_box = basic_box_array(image_size, 1)
|
| 22 |
+
sample_forward_slash_box = forward_slash_array(image_size, 1)
|
| 23 |
+
sample_combined = combine_arrays([sample_forward_slash_box, sample_basic_box])
|
| 24 |
+
print(sample_combined)
|
| 25 |
+
|
| 26 |
+
sample_density = np.array([sample_combined * density_value for density_value in densities])
|
| 27 |
+
|
| 28 |
+
# copy = sample_combined
|
| 29 |
+
sample_thickness = []
|
| 30 |
+
# test = add_thickness(copy, 2)
|
| 31 |
+
# sample_thickness.append(test)
|
| 32 |
+
# print(sample_thickness)
|
| 33 |
+
for i in [1, 2, 3, 4]:
|
| 34 |
+
copy = sample_combined
|
| 35 |
+
print(i)
|
| 36 |
+
test = add_thickness(copy, i)
|
| 37 |
+
print(test)
|
| 38 |
+
sample_thickness.append(test)
|
| 39 |
+
# print(sample_thickness)
|
| 40 |
+
########################################################################################################################
|
| 41 |
+
# Output Example Shapes
|
| 42 |
+
st.write("Click 'Generate Samples' to show some density values that would exist in your dataset:")
|
| 43 |
+
|
| 44 |
+
|
| 45 |
+
# Show samples of various density values
|
| 46 |
+
|
| 47 |
+
if st.button('Generate Samples'): # Generate the samples
|
| 48 |
+
plt.figure(1)
|
| 49 |
+
st.header("Sample Density Figures:")
|
| 50 |
+
max_figures = min(density_selection, 5)
|
| 51 |
+
for i in range(max_figures):
|
| 52 |
+
plt.subplot(1, max_figures+1, i+1), plt.imshow(sample_density[i], cmap='gray', vmin=0, vmax=1)
|
| 53 |
+
if i != 0: # Show y-label for only first figure
|
| 54 |
+
plt.tick_params(left=False, labelleft=False)
|
| 55 |
+
plt.title("Density: " + str(round(densities[i], 4)), fontsize=6)
|
| 56 |
+
plt.figure(1)
|
| 57 |
+
# cax = plt.axes([0.85, 0.1, 0.075, 0.8])
|
| 58 |
+
# plt.colorbar(cax=cax, shrink=0.1)
|
| 59 |
+
st.pyplot(plt.figure(1))
|
| 60 |
+
|
| 61 |
+
# Show samples of various thickness values
|
| 62 |
+
st.header("Sample Thickness Figures:")
|
| 63 |
+
plt.figure(2)
|
| 64 |
+
for i in range(len(sample_thickness)):
|
| 65 |
+
plt.subplot(1, 5, i+1), plt.imshow(sample_thickness[i], cmap='gray', vmin=0, vmax=1)
|
| 66 |
+
if i != 0: # Show y-label for only first figure
|
| 67 |
+
plt.tick_params(left=False, labelleft=False)
|
| 68 |
+
plt.title("Thickness: " + str(i+1), fontsize=6)
|
| 69 |
+
plt.figure(2)
|
| 70 |
+
# cax = plt.axes([0.85, 0.1, 0.075, 0.8])
|
| 71 |
+
# plt.colorbar(cax=cax, shrink=0.1)
|
| 72 |
+
st.pyplot(plt.figure(2))
|
| 73 |
+
|
| 74 |
+
|
| 75 |
+
|
| 76 |
+
########################################################################################################################
|
| 77 |
+
# Output Generated Examples
|
| 78 |
+
|
| 79 |
+
# plt.figure(2)
|
| 80 |
+
# for j in range(5): # shows 5 random images to the users to view samples of the dataset
|
| 81 |
+
# i = np.random.randint(0, len(result))
|
| 82 |
+
# plt.subplot(550 + 1 + j)
|
| 83 |
+
# plt.imshow(result[i], cmap='gray', vmin=0, vmax=1)
|
| 84 |
+
# plt.figure(2)
|
| 85 |
+
# st.pyplot(plt.figure(2))
|
| 86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 87 |
|
| 88 |
'''
|
| 89 |
# Testing
|