Spaces:
Runtime error
Runtime error
File size: 3,882 Bytes
ba9a83a 35adcb2 3715c63 ba9a83a 3715c63 ba9a83a 35adcb2 ba9a83a 3715c63 35adcb2 ba9a83a 35adcb2 ba9a83a 35adcb2 ba9a83a 3715c63 ba9a83a 35adcb2 ba9a83a 35adcb2 ba9a83a 35adcb2 ba9a83a 35adcb2 ba9a83a 35adcb2 ba9a83a 35adcb2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
''' ----------------------------------------
* Creation Time : Sun Aug 28 21:38:58 2022
* Last Modified : Sun Aug 28 21:41:36 2022
* Author : Charles N. Christensen
* Github : github.com/charlesnchr
----------------------------------------'''
from turtle import title
import gradio as gr
import numpy as np
from PIL import Image
import io
import base64
import skimage
from NNfunctions import *
opt = GetOptions_allRnd_0317()
net = LoadModel(opt)
gr.close_all()
def predict(imagefile):
# img = np.array(skimage.io.imread(imagefile.name))
# img = np.concatenate((img,img,img),axis=2)
# img = np.transpose(img, (2,0,1))
img = skimage.io.imread(imagefile.name)
# sr,wf,out = EvaluateModel(net,opt,img,outfile)
sr, wf, sr_download = EvaluateModel(net,opt,img)
return wf, sr, sr_download
def process_example(filename):
basename = os.path.basename(filename)
basename = basename.replace('.png','.tif')
img = skimage.io.imread('TestImages/%s' % basename)
sr, wf, sr_download = EvaluateModel(net,opt,img)
return wf, sr
title = '<h1 style="text-align: center;">ML-SIM: Reconstruction of SIM images with deep learning</h1>'
description = """
This space demonstrates the ML-SIM method for reconstruction of structured illumination microscopy images.
### <a href="https://opg.optica.org/boe/viewmedia.cfm?uri=boe-12-5-2720&html=true" target='_blank' > ML-SIM: universal reconstruction of structured illumination microscopy images using transfer learning </a>
_Charles N. Christensen<sup>1,2,*</sup>, Edward N. Ward<sup>1</sup>, Meng Lu<sup>1</sup>, Pietro Lio<sup>2</sup>, Clemens F. Kaminski_</br></br>
<sup>1</sup>University of Cambridge, Department of Chemical Engineering and Biotechnology, Laser Analytics Group</br>
<sup>2</sup>University of Cambridge, Department of Computer Science and Technology, Artificial Intelligence Group</br>
<sup> *</sup>**Author of this repository**:
- GitHub: [charlesnchr](http://github.com/charlesnchr)
- Email: charles.n.chr@gmail.com
- Twitter: [charlesnchr](https://twitter.com/charlesnchr)
---
## 🔬 To ru ML-SIM
Upload a TIFF image and hit submit or select one from the examples below.
"""
article = """
---
### Read more
- <a href='https://ML-SIM.com' target='_blank'>ML-SIM.com</a>
- <a href='https://charles-christensen.com' target='_blank'>Website</a>
- <a href='https://github.com/charlesnchr/ML-SIM' target='_blank'>Github</a>
- <a href='https://opg.optica.org/boe/viewmedia.cfm?uri=boe-12-5-2720&html=true' target='_blank'>Publication</a>
"""
# inputs = gr.inputs.Image(label="Upload a TIFF image", type = 'pil', optional=False)
inputs = gr.inputs.File(label="Upload a TIFF image", type = 'file', optional=False)
outputs = [
gr.outputs.Image(label="INPUT (Wide-field projection)"),
gr.outputs.Image(label="OUTPUT (ML-SIM)"),
gr.outputs.File(label="Download SR image" )
# , gr.outputs.Textbox(type="auto",label="Pet Prediction")
]
examples = glob.glob('TestImages/*')
interface = gr.Interface(fn=predict,
inputs=inputs,
outputs=outputs,
title = title,
description=description,
article=article,
examples=examples,
allow_flagging='never'
)
interface.launch()
# with gr.Blocks() as interface:
# gr.Markdown(title)
# gr.Markdown(description)
# with gr.Row():
# input1 = gr.inputs.File(label="Upload a TIFF image", type = 'file', optional=False)
# submit_btn = gr.Button("Reconstruct")
# with gr.Row():
# output1 = gr.outputs.Image(label="Wide-field projection")
# output2 = gr.outputs.Image(label="SIM Reconstruction")
# output3 = gr.File(label="Download SR image", visible=False)
# submit_btn.click(
# predict,
# input1,
# [output1, output2, output3]
# )
# gr.Examples(examples, input1, [output1, output2, output3])
# interface.launch()
|