Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -1,7 +1,12 @@
|
|
| 1 |
import streamlit as st
|
| 2 |
from streamlit_drawable_canvas import st_canvas
|
| 3 |
from streamlit_image_coordinates import streamlit_image_coordinates
|
| 4 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
|
| 6 |
from model.data_process.demo_data_process import process_ct_gt
|
| 7 |
import numpy as np
|
|
@@ -15,6 +20,7 @@ import tempfile
|
|
| 15 |
print('script run')
|
| 16 |
|
| 17 |
#############################################
|
|
|
|
| 18 |
# init session_state
|
| 19 |
if 'option' not in st.session_state:
|
| 20 |
st.session_state.option = None
|
|
@@ -55,12 +61,37 @@ if 'running' not in st.session_state:
|
|
| 55 |
if 'transparency' not in st.session_state:
|
| 56 |
st.session_state.transparency = 0.25
|
| 57 |
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 64 |
|
| 65 |
#############################################
|
| 66 |
|
|
|
|
| 1 |
import streamlit as st
|
| 2 |
from streamlit_drawable_canvas import st_canvas
|
| 3 |
from streamlit_image_coordinates import streamlit_image_coordinates
|
| 4 |
+
from idc_index import index
|
| 5 |
+
import os
|
| 6 |
+
import glob
|
| 7 |
+
import shutil
|
| 8 |
+
import dcm2niix
|
| 9 |
+
import subprocess
|
| 10 |
|
| 11 |
from model.data_process.demo_data_process import process_ct_gt
|
| 12 |
import numpy as np
|
|
|
|
| 20 |
print('script run')
|
| 21 |
|
| 22 |
#############################################
|
| 23 |
+
st.session_state.option = None
|
| 24 |
# init session_state
|
| 25 |
if 'option' not in st.session_state:
|
| 26 |
st.session_state.option = None
|
|
|
|
| 61 |
if 'transparency' not in st.session_state:
|
| 62 |
st.session_state.transparency = 0.25
|
| 63 |
|
| 64 |
+
#download IDC data cases
|
| 65 |
+
client = index.IDCClient()
|
| 66 |
+
#define serieUIDs to download
|
| 67 |
+
serieUIDs_list = ["1.3.6.1.4.1.14519.5.2.1.8421.4008.125612661111422710051062993644",
|
| 68 |
+
"1.3.6.1.4.1.14519.5.2.1.3344.4008.552105302448832783460360105045",
|
| 69 |
+
"1.3.6.1.4.1.14519.5.2.1.3344.4008.217290429362492484143666931850",
|
| 70 |
+
"1.3.6.1.4.1.14519.5.2.1.3344.4008.315023636447426194723399171147",
|
| 71 |
+
"1.3.6.1.4.1.14519.5.2.1.3344.4008.307374355712319704057189924161"]
|
| 72 |
+
|
| 73 |
+
#download series and convert to .nii.gz
|
| 74 |
+
samples_root_dir = "model/asset/idc_samples"
|
| 75 |
+
if not os.path.exists(samples_root_dir) : os.mkdir(samples_root_dir)
|
| 76 |
+
for idx, serieUID_ddl in enumerate(serieUIDs_list):
|
| 77 |
+
sample_dcm_dir = os.path.join(samples_root_dir, f"ddl_series{idx}_dcm")
|
| 78 |
+
sample_nii_dir = os.path.join(samples_root_dir, f"ddl_series{idx}_nii")
|
| 79 |
+
for dir in [sample_dcm_dir, sample_nii_dir]:
|
| 80 |
+
if os.path.exists(dir):
|
| 81 |
+
shutil.rmtree(dir)
|
| 82 |
+
os.makedirs(dir)
|
| 83 |
+
client.download_from_selection(seriesInstanceUID=\
|
| 84 |
+
serieUID_ddl, \
|
| 85 |
+
downloadDir=sample_dcm_dir)
|
| 86 |
+
subprocess.call(["dcm2niix", "-o", sample_nii_dir, "-z", "y",
|
| 87 |
+
"-f", "IDC_%i", "-g", "y", sample_dcm_dir])
|
| 88 |
+
case_list = glob.glob(os.path.join(samples_root_dir, "*nii/*.nii.gz"))
|
| 89 |
+
# case_list = [
|
| 90 |
+
# 'model/asset/FLARE22_Tr_0002_0000.nii.gz',
|
| 91 |
+
# 'model/asset/FLARE22_Tr_0005_0000.nii.gz',
|
| 92 |
+
# 'model/asset/FLARE22_Tr_0034_0000.nii.gz',
|
| 93 |
+
# 'model/asset/FLARE22_Tr_0045_0000.nii.gz'
|
| 94 |
+
# ]
|
| 95 |
|
| 96 |
#############################################
|
| 97 |
|