LOHJC commited on
Commit
77a9008
1 Parent(s): e96dcf8

added initial files

Browse files
Files changed (4) hide show
  1. animalImageGAN_full.onnx +3 -0
  2. app.py +60 -0
  3. flagged/log.csv +2 -0
  4. requirements.txt +4 -0
animalImageGAN_full.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:494ad8f4fc71738510d6accdb1fe1b47a50f4d18b5fccfdc58c107b927ee6e4d
3
+ size 12669054
app.py ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ import onnx
3
+ import onnxruntime as ort
4
+ import numpy as np
5
+
6
+ MODEL_PATH = r"./"
7
+ model_name = "animalImageGAN_full.onnx"
8
+ ONNX_MODEL_PATH = MODEL_PATH+model_name
9
+
10
+ onnx_model = onnx.load(ONNX_MODEL_PATH)
11
+ onnx.checker.check_model(onnx_model)
12
+
13
+ rng = np.random.default_rng()
14
+ desired_mean = 0
15
+ desired_variance = 1
16
+
17
+ generator_input_size = 50
18
+ latent_space_samples = np.random.rand(generator_input_size,1,1).astype(np.float32)
19
+ ort_sess = ort.InferenceSession(ONNX_MODEL_PATH)
20
+
21
+ import gradio as gr
22
+
23
+
24
+ def generateImage():
25
+ random_input = rng.random((generator_input_size, 1, 1),dtype=np.float32)
26
+ current_mean = np.mean(random_input)
27
+ current_variance = np.var(random_input)
28
+ scaled_values = (random_input - current_mean) / np.sqrt(current_variance)
29
+ random_input = scaled_values * np.sqrt(desired_variance) + desired_mean
30
+
31
+ outputs = ort_sess.run(None, {'input': random_input})
32
+ output = outputs[0]
33
+ denorm_output = np.clip((output * 0.5) + 0.5,0,1)
34
+ #print("i: {}, min:{},max:{}".format(i,denorm_output.min(),denorm_output.max()))
35
+ return denorm_output.transpose(1,2,0)
36
+
37
+ DESCRIPTION = "<div style='text-align:center'><h1 style='justify-content: center'>Animal Portrait Generator</h1>"
38
+ DESCRIPTION += "<p>This is a model trained by using DCGAN</p>"
39
+ DESCRIPTION += "<p>More details:</p>"
40
+ DESCRIPTION += "<ul><li><a href='https://medium.com/@jiachiewloh/dcgan-animal-image-generator-85e466fb6254'>Article</a></li>"
41
+ DESCRIPTION += "<li><a href='https://www.kaggle.com/code/jclohjc/animal-image-generator-dcgan'>Code</a></li></ul>"
42
+ DESCRIPTION += "</div>"
43
+
44
+ with gr.Blocks(css="#img_window {text-align:center; justify-content: center;}\
45
+ .image-container {margin: auto; height: 250px; width: 250px; !important}") as demo:
46
+ # with gr.Row():
47
+ # gr.Markdown(DESCRIPTION)
48
+ # with gr.Column():
49
+ # img_window = gr.Image(interactive=False,height=250,width=250)
50
+ # with gr.Row():
51
+ # gr.Button("Generate").click(fn=generateImage,outputs=img_window)
52
+ # gr.ClearButton().add(img_window)
53
+
54
+
55
+ gr.Markdown(DESCRIPTION)
56
+ img_window = gr.Image(interactive=False,elem_id="img_window")
57
+ with gr.Row():
58
+ gr.Button("Generate").click(fn=generateImage,outputs=img_window)
59
+ gr.ClearButton().add(img_window)
60
+ demo.launch()
flagged/log.csv ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ output,flag,username,timestamp
2
+ ,,,2024-02-25 01:05:52.118984
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ onnx
2
+ onnxruntime
3
+ numpy
4
+ matplotlib