jeysshon commited on
Commit
886e412
β€’
1 Parent(s): 642b141

Upload 6 files

Browse files
Files changed (6) hide show
  1. Isatron_v2.h5 +3 -0
  2. README.md +6 -5
  3. app.py +70 -0
  4. gitattributes +35 -0
  5. isatron_v3.h5 +3 -0
  6. requirements.txt +6 -0
Isatron_v2.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7258b776465706522c96b23ce2d88087f8a7a0ae49f5f1139d83a0a56a1f9e98
3
+ size 275130272
README.md CHANGED
@@ -1,12 +1,13 @@
1
  ---
2
- title: Isatron V2
3
- emoji: πŸƒ
4
- colorFrom: purple
5
- colorTo: pink
6
  sdk: gradio
7
- sdk_version: 4.28.3
8
  app_file: app.py
9
  pinned: false
 
10
  ---
11
 
12
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: Pneumonia Detection
3
+ emoji: 🏒
4
+ colorFrom: blue
5
+ colorTo: red
6
  sdk: gradio
7
+ sdk_version: 4.25.0
8
  app_file: app.py
9
  pinned: false
10
+ license: apache-2.0
11
  ---
12
 
13
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
app.py ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import numpy as np
3
+ import cv2
4
+ from keras.models import load_model
5
+
6
+ # Load the trained models
7
+ model1 = load_model('./model1.h5')
8
+ # model2 = load_model('./model2.h5')
9
+
10
+ # Print the loaded models
11
+ print(model1)
12
+ # print(model2)
13
+
14
+ # Define image size and labels
15
+ img_size1 = 150
16
+ # img_size2 = 224
17
+ labels = ['PNEUMONIA', 'NORMAL']
18
+
19
+ def load_and_preprocess_image1(img):
20
+ # Convert Gradio image (PIL Image) to numpy array
21
+ img = np.array(img)
22
+ # Convert RGB to grayscale
23
+ img = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
24
+ # Resize image to the required input size
25
+ img = cv2.resize(img, (img_size1, img_size1))
26
+ # Reshape image for model input
27
+ img = img.reshape(-1, img_size1, img_size1, 1)
28
+ # Normalize image
29
+ img = img / 255.0
30
+ return img
31
+
32
+ # def load_and_preprocess_image2(img):
33
+ # # Convert Gradio image (PIL Image) to numpy array
34
+ # img = np.array(img)
35
+ # # Convert RGB to grayscale
36
+ # img = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
37
+ # # Resize image to the required input size
38
+ # img = cv2.resize(img, (img_size2, img_size2))
39
+ # # Reshape image for model input
40
+ # img = img.reshape(-1, img_size2, img_size2, 1)
41
+ # # Normalize image
42
+ # img = img / 255.0
43
+ # return img
44
+
45
+ def image_classifier1(img):
46
+ # Preprocess the image
47
+ img = load_and_preprocess_image1(img)
48
+ # Perform prediction using model1
49
+ prediction = model1.predict(img)[0][0] # Assuming your model outputs a single probability
50
+ # Return the prediction
51
+ return {'PNEUMONIA': prediction, 'NORMAL': 1-prediction} # Invert the prediction for Gradio
52
+
53
+ # def image_classifier2(img):
54
+ # # Preprocess the image
55
+ # img = load_and_preprocess_image2(img)
56
+ # # Perform prediction using model2
57
+ # prediction = model2.predict(img)[0][0] # Assuming your model outputs a single probability
58
+ # # Return the prediction
59
+ # return {'PNEUMONIA': 1-prediction, 'NORMAL': prediction} # Invert the prediction for Gradio
60
+
61
+ # Create Gradio interfaces for each model
62
+ demo_model1 = gr.Interface(fn=image_classifier1, inputs="image", outputs="label", title="Pneumonia Detection - Model 1")
63
+ # demo_model2 = gr.Interface(fn=image_classifier2, inputs="image", outputs="label", title="Pneumonia Detection - Model 2")
64
+
65
+ # gr.Parallel(demo_model1, demo_model2).launch(share=True)
66
+ # Launch the interfaces simultaneously
67
+ if __name__ == "__main__":
68
+ # demo_model1.launch(share=True)
69
+ demo_model1.launch(share=True)
70
+
gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
isatron_v3.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:83fb9537440059cd0ffb1a34af740ac4874249b30d18c8d0a5b684cab433d740
3
+ size 143125200
requirements.txt ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ gradio
2
+ opencv-python
3
+ numpy
4
+ tensorflow
5
+ keras==2.13.1
6
+ keras_applications==1.0.8