Myosotis-Researches 0.1.10__py3-none-any.whl → 0.1.11__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- myosotis_researches/CcGAN/visualize/__init__.py +3 -0
- myosotis_researches/CcGAN/visualize/visualize_datasets.py +98 -0
- {myosotis_researches-0.1.10.dist-info → myosotis_researches-0.1.11.dist-info}/METADATA +1 -1
- {myosotis_researches-0.1.10.dist-info → myosotis_researches-0.1.11.dist-info}/RECORD +7 -5
- {myosotis_researches-0.1.10.dist-info → myosotis_researches-0.1.11.dist-info}/WHEEL +0 -0
- {myosotis_researches-0.1.10.dist-info → myosotis_researches-0.1.11.dist-info}/licenses/LICENSE +0 -0
- {myosotis_researches-0.1.10.dist-info → myosotis_researches-0.1.11.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,98 @@
|
|
1
|
+
import base64
|
2
|
+
from flask import Flask, send_file
|
3
|
+
import h5py
|
4
|
+
from importlib import resources
|
5
|
+
from io import BytesIO
|
6
|
+
from jinja2 import Template
|
7
|
+
from myosotis_researches.CcGAN.internal import *
|
8
|
+
import numpy as np
|
9
|
+
import pandas as pd
|
10
|
+
from PIL import Image
|
11
|
+
|
12
|
+
|
13
|
+
def Image_to_Base64(image: Image):
|
14
|
+
buffered = BytesIO()
|
15
|
+
image.save(buffered, format="PNG")
|
16
|
+
img_base64 = base64.b64encode(buffered.getvalue()).decode("utf-8")
|
17
|
+
return f"data:image/png;base64,{img_base64}"
|
18
|
+
|
19
|
+
|
20
|
+
def datasets_to_html(indexes, datasets_path, list_path, template_path):
|
21
|
+
|
22
|
+
N = len(indexes)
|
23
|
+
|
24
|
+
# Get template
|
25
|
+
with open(template_path, "r") as f:
|
26
|
+
template = Template(f.read())
|
27
|
+
|
28
|
+
# Get data
|
29
|
+
with h5py.File(datasets_path, "r") as f:
|
30
|
+
images = f["images"][indexes]
|
31
|
+
index_train = f["index_train"][:]
|
32
|
+
index_valid = f["index_valid"][:]
|
33
|
+
labels = f["labels"][indexes]
|
34
|
+
types = f["types"][indexes]
|
35
|
+
|
36
|
+
# Get list
|
37
|
+
df = pd.read_csv(list_path)
|
38
|
+
tool_wears = df.loc[indexes, "tool_wear"]
|
39
|
+
surfaces = df.loc[indexes, "surface"]
|
40
|
+
image_names = df.loc[indexes, "image_name"]
|
41
|
+
|
42
|
+
# Transform data to base64
|
43
|
+
images = np.transpose(images, (0, 2, 3, 1))
|
44
|
+
images = [Image.fromarray(image) for image in images]
|
45
|
+
images_base64 = [Image_to_Base64(image) for image in images]
|
46
|
+
|
47
|
+
# Render template
|
48
|
+
items = []
|
49
|
+
for i in range(N):
|
50
|
+
items.append(
|
51
|
+
{
|
52
|
+
"image": images_base64[i],
|
53
|
+
"image_name": image_names[i],
|
54
|
+
"label": labels[i],
|
55
|
+
"type": types[i],
|
56
|
+
"index": indexes[i],
|
57
|
+
}
|
58
|
+
)
|
59
|
+
|
60
|
+
return template.render(
|
61
|
+
indexes=indexes,
|
62
|
+
datasets_path=datasets_path,
|
63
|
+
list_path=list_path,
|
64
|
+
template_path=template_path,
|
65
|
+
items=items,
|
66
|
+
)
|
67
|
+
|
68
|
+
|
69
|
+
def visualize_datasets(
|
70
|
+
indexes,
|
71
|
+
datasets_path,
|
72
|
+
list_path,
|
73
|
+
template_path=resources.files("myosotis_researches").joinpath(
|
74
|
+
"CcGAN", "visualize", "src", "template.html"
|
75
|
+
),
|
76
|
+
host="127.0.0.1",
|
77
|
+
port=8000,
|
78
|
+
debug=True,
|
79
|
+
):
|
80
|
+
# Local server
|
81
|
+
app = Flask(__name__)
|
82
|
+
|
83
|
+
@app.route("/")
|
84
|
+
def index():
|
85
|
+
return datasets_to_html(indexes, datasets_path, list_path, template_path)
|
86
|
+
|
87
|
+
@app.route("/style.css")
|
88
|
+
def style():
|
89
|
+
return send_file(
|
90
|
+
resources.files("myosotis_researches").joinpath(
|
91
|
+
"CcGAN", "visualize", "src", "style.css"
|
92
|
+
)
|
93
|
+
)
|
94
|
+
|
95
|
+
app.run(host=host, port=port, debug=debug)
|
96
|
+
|
97
|
+
|
98
|
+
__all__ = ["visualize_datasets"]
|
@@ -33,8 +33,10 @@ myosotis_researches/CcGAN/utils/make_h5.py,sha256=VtFYjr_i-JktsEW_BvofpilcDmChRm
|
|
33
33
|
myosotis_researches/CcGAN/utils/opts.py,sha256=pd7-wknNPBO5hWRpO3YAPmmAsPKgZUUpKc4gWMs6Wto,5397
|
34
34
|
myosotis_researches/CcGAN/utils/print_hdf5.py,sha256=VvmNAWtMDmg6D9V6ZbSUXrQTKRh9WIJeC4BR_ORJkco,300
|
35
35
|
myosotis_researches/CcGAN/utils/train.py,sha256=5ZXgkGesuInqUooJRpLej_KHqYQtlSDq90_5wig5elQ,5152
|
36
|
-
myosotis_researches
|
37
|
-
myosotis_researches
|
38
|
-
myosotis_researches-0.1.
|
39
|
-
myosotis_researches-0.1.
|
40
|
-
myosotis_researches-0.1.
|
36
|
+
myosotis_researches/CcGAN/visualize/__init__.py,sha256=RHfzFo7FgcJhZVQ9DkEIGELK-lQNC5X915kPH8XGSiM,85
|
37
|
+
myosotis_researches/CcGAN/visualize/visualize_datasets.py,sha256=NcrszJon9mFtffMyIR8SJyxl-ZXWWEutFcViXzpn5e0,2533
|
38
|
+
myosotis_researches-0.1.11.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
39
|
+
myosotis_researches-0.1.11.dist-info/METADATA,sha256=e7evcqF20wMz7S5Ls1oBSzK1uJ-FWAy47Auvix01MMc,2664
|
40
|
+
myosotis_researches-0.1.11.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
|
41
|
+
myosotis_researches-0.1.11.dist-info/top_level.txt,sha256=zxAiMn5eyZNJM28MewTAkgi_RZJMbfWbzVR-KF0LdZE,20
|
42
|
+
myosotis_researches-0.1.11.dist-info/RECORD,,
|
File without changes
|
{myosotis_researches-0.1.10.dist-info → myosotis_researches-0.1.11.dist-info}/licenses/LICENSE
RENAMED
File without changes
|
File without changes
|