Margerie commited on
Commit
24d75fd
1 Parent(s): becff20

doc updated

Browse files
ai_models.html CHANGED
@@ -35,7 +35,7 @@
35
  <div class="row">
36
  <div class="col-lg-11">
37
  <h1 class="mb-4 mt-4">AI models</h1>
38
-
39
  <section class="mt-4">
40
  <div style="display: flex;">
41
 
@@ -72,9 +72,9 @@
72
  </section>
73
  </section>
74
 
75
- <section class="mt-4" id="add-your-models">
76
  <h2>Add your models</h2>
77
- </section>
78
  </div>
79
  </div>
80
  </div>
 
35
  <div class="row">
36
  <div class="col-lg-11">
37
  <h1 class="mb-4 mt-4">AI models</h1>
38
+ <p>AI models are hosted on HugginFace and can be downloaded directly from the PARROT application. We provide trained segmentation and dose prediction models. See below for model details.</p>
39
  <section class="mt-4">
40
  <div style="display: flex;">
41
 
 
72
  </section>
73
  </section>
74
 
75
+ <!-- <section class="mt-4" id="add-your-models">
76
  <h2>Add your models</h2>
77
+ </section> -->
78
  </div>
79
  </div>
80
  </div>
contact.html CHANGED
@@ -32,6 +32,33 @@
32
  <p>If you have any questions or want to share information about your AI model to include it to PARROT, contact us ! </p>
33
 
34
  <p>Email address: <a href="mailto:info@parrot4ai.org">info@parrot4ai.org</a></p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
  </div>
36
  </div>
37
  </div>
 
32
  <p>If you have any questions or want to share information about your AI model to include it to PARROT, contact us ! </p>
33
 
34
  <p>Email address: <a href="mailto:info@parrot4ai.org">info@parrot4ai.org</a></p>
35
+ <h1 class="mb-4 mt-4">The Team</h1>
36
+ <div class="row">
37
+ <div class="col-2 text-center">
38
+ <img src="img/ana.jpg" alt="Ana Barragan Montero" class="img-fluid w-80 mb-3">
39
+ <p>Ana Barragan Monero</p>
40
+ </div>
41
+ <div class="col-2 text-center">
42
+ <img src="img/margerie.jpg" alt="Ana Barragan Montero" class="img-fluid w-80 mb-3">
43
+ <p>Margerie Huet Dastarac</p>
44
+ </div>
45
+ <div class="col-2 text-center">
46
+ <img src="img/wei.jpg" alt="Ana Barragan Montero" class="img-fluid w-80 mb-3">
47
+ <p>Wei Zhao</p>
48
+ </div>
49
+ <div class="col-2 text-center">
50
+ <img src="img/sylvain.jpeg" alt="Ana Barragan Montero" class="img-fluid w-80 mb-3">
51
+ <p>Sylvain Deffet</p>
52
+ </div>
53
+ <div class="col-lg-2 text-center">
54
+ <img src="img/dani.jpeg" alt="Ana Barragan Montero" class="img-fluid w-80 mb-3">
55
+ <p>Daniel Rodriguez De La Calle</p>
56
+ </div>
57
+ <div class="col-2 text-center">
58
+ <img src="img/pablo.jpeg" alt="Ana Barragan Montero" class="img-fluid w-80 mb-3">
59
+ <p>Pablo Romero Agudo</p>
60
+ </div>
61
+ </div>
62
  </div>
63
  </div>
64
  </div>
documentation.html CHANGED
@@ -1,5 +1,6 @@
1
  <!DOCTYPE html>
2
  <html lang="en">
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
@@ -7,240 +8,293 @@
7
  <link rel="stylesheet" type="text/css" href="style.css">
8
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
9
  </head>
 
10
  <body>
11
 
12
- <nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">
13
- <a class="navbar-brand" href="#">PARROT</a>
14
- <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav"
15
  aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
16
- <span class="navbar-toggler-icon"></span>
17
- </button>
18
- <div class="collapse navbar-collapse" id="navbarNav">
19
- <div class="navbar-nav">
20
  <a class="nav-link" href="index.html">Home</a>
21
  <a class="nav-link active" href="#">Documentation</a>
22
  <a class="nav-link" href="ai_models.html">AI models</a>
23
  <a class="nav-link" href="contact.html">Contact</a>
 
24
  </div>
25
- </div>
26
- </nav>
27
-
28
- <button id="topBtn" onclick="topFunction()">↑</button>
29
-
30
- <div class="container mt-5">
31
- <div class="row">
32
- <div class="col-lg-8">
33
- <h1 class="mb-4 mt-4">Documentation</h1>
34
-
35
- <section id="PARROT">
36
- <h2>PARROT: Platform for ARtificial intelligence guided Radiation Oncology Treatment</h2>
37
- <p>
38
- <strong>PARROT</strong> is a local web application. It provides different modules that allow users to:
39
- </p>
40
- <ul>
41
- <li>
42
- <p>Run AI models.</p>
43
- </li>
44
-
45
- <li>
46
- <p>Visualize CT and (soon) MR images.</p>
47
- </li>
48
-
49
- <li>
50
- <p>Visualize, predict or modify segmentation information.</p>
51
- </li>
52
-
53
- <li>
54
- <p>Visualize, predict, evaluate, and compare dose distributions.</p>
55
- </li>
56
- </ul>
57
- </section>
58
- <section id="installation">
59
- <h2>Installation steps</h2>
60
- <h3>PARROT</h3>
61
- <p>There are two ways to install PARROT, downloading the executable file of the last release from the <a href="index.html">Home</a> page is recommended. Otherwise, the code with building instructions are also available on our <a href="https://gitlab.com/ai4miro/parrot">Gitlab repository</a>.</p>
62
-
63
- <h3>Orthanc</h3>
64
- <p>
65
- Patient data are stored using a Orthanc daemon, a lightweight, standalone DICOM server, which ensures the confidentiality of patient files. To install Orthanc, either click on the link on PARROT's home tab (see Figure 1) or click on the following link: <a href="https://orthanc.uclouvain.be/downloads/windows-64/installers/OrthancInstaller-Win64-24.2.3.exe">Install Orthanc</a>.
66
- </p>
67
- <figure>
68
- <img src="img/install_orthanc.png" alt="Install orthanc" class="img-fluid mb-3">
69
- <figcaption>Figure 1: Home screen, link to install Orthanc.</figcaption>
70
- </figure>
71
-
72
- <p class="warning">
73
- ⚠ The Orthanc server will run on <a target="_blank" href="http://localhost:8042/">port 8042</a> while nginx server for the application will run on <a target="_blank" href="http://localhost:2000/">port 2000</a>.
74
- </p>
75
- </section>
76
-
77
- <section id="organisation">
78
- <h2>Organisation of the application</h2>
79
- The application is divided in multiple tabs that users can visit through the top navigation bar. This section provides a description of each tabs and their features.
80
- <section id="patient-management">
81
- <h3>Patient Management</h3>
82
- <p>Users can import patient DICOM data (files or zip) from this screen to a local Orthanc daemon. A list of patient data present in the Orthanc server is displayed with summarized information. Users can load the patient into the app by clicking on the Load button. Users can delete a patient from the server with the red arrow on the right.</p>
83
- <figure>
84
- <img src="img/screen_patient_management.PNG" alt="Patient Management Image" class="img-fluid mb-3">
85
- <figcaption>Figure 2: Patient Management screen.</figcaption>
86
- </figure>
87
- </section>
88
-
89
- <section id="study-management">
90
- <h3>Study Management</h3>
91
- <p>A list of studies of the loaded patient present in the Orthanc server is displayed with summarized information. Users can load the data into the app by clicking on the Load button. The left icon displays more complete information from DICOM tags and users can delete a patient study from the server with the red arrow on the right.</p>
92
- <figure>
93
- <img src="img/screen_study_management.png" alt="Study Management Image" class="img-fluid mb-3">
94
- <figcaption>Figure 3: Study Management screen.</figcaption>
95
- </figure>
96
- </section>
97
-
98
- <section id="ai-models-management">
99
- <h3>AI Models Management</h3>
100
- <figure>
101
- <img src="img/screen_ai_models_management.png" alt="AI Models Management Image" class="img-fluid mb-3">
102
- <figcaption>Figure 4: AI Models Management screen.</figcaption>
103
- </figure>
104
- <p>Eight segmentation models and six dose prediction models are made available and listed on the screen (Figure 2). These models are trained from state-of-the-art architectures such as nnUNet, SwinUNETR and HDUNet (Table 1). On the left hand side of each line, a standardized description of the model is available. The PDF description file contains details about the architecture with a link of the original research article, details on the training process including dataset, and performance on our test set (Figure 3). Users also have the flexibility to run their own models using a Python scripting editor and display the output in the viewer (Figure 4). We distinguish two categories of models: the segmentation models and the dose prediction models. A key difference between the two categories is that segmentation models require only the anatomy of the patient (CT scan or MRI image) whereas dose prediction models also require binary masks of tumor volumes (TV) and organs at risk (OARs). For that latter, we implemented a dialog that allows users to map structures present in the current patient data and the input required for the AI dose prediction model (Figure 5).</p>
105
-
106
-
107
- </section>
108
-
109
- <section id="patient-modeling">
110
- <h3>Patient Modeling</h3>
111
- <figure>
112
- <img src="img/screen_patient_modeling.png" alt="Patient Modeling Image" class="img-fluid mb-3">
113
- <figcaption>Figure 5: Patient Modeling screen.</figcaption>
114
- </figure>
115
- <p>Eight segmentation models and six dose prediction models are made available and listed on the screen (Figure 3). These models are trained from state-of-the-art architectures such as nnUNet [2], SwinUNETR [3] and HDUNet [4] (Table 1). On the left hand side of each line, a standardized description of the model is available. The PDF description file contains details about the architecture with a link of the original research article, details on the training process including dataset, and performance on our test set (Figure 4).
116
-
117
- To run a model prediction, the user simply clicks on the yellow Prediction button on the right hand side of the model line. This will open a Python scripting editor to run the code (Figure 5). Two choices are available to the user: either run the code locally or in one of the Python environments provided. The latter option provides a Python version with a set of libraries. Users can select a Python environment with the drop-down menu in the upper right corner and by hovering on it, a description of the libraries they contain is displayed. Once the prediction is done, users can upload the result to the study to visualize the output in the Patient Modeling screen (Figure 7). Users also have the flexibility to run their own models by loading their own code in the Python scripting editor. On our website, we provide a description and examples using the API to retrieve the patient information loaded on PARROT and upload the result.
118
-
119
- We distinguish two categories of models: the segmentation models and the dose prediction models. A key difference between the two categories is that segmentation models require only the anatomy of the patient (CT scan or MRI image) whereas dose prediction models also require binary masks of tumor volumes (TV) and organs at risk (OARs). For that latter, we implemented a dialog that allows users to map structures present in the current patient data and the input required for the AI dose prediction model (Figure 6).
120
- </p>
121
- </section>
122
-
123
- <section id="plan-evaluation">
124
- <h3>Plan Evaluation</h3>
125
- <figure>
126
- <img src="img/screen_plan_evaluation.png" alt="Plan Evaluation Image" class="img-fluid mb-3">
127
- <figcaption>Figure 6: Plan Evaluation screen.</figcaption>
128
- </figure>
129
- <p>A comprehensive display of two dose distributions comparison is presented on the last screen. The two dose distributions can originate from the importation step or result from the inference of ai models. We provide a set of tools for comparison, such as DVH curves, dose statistics, and the fulfillment of clinical goals. Clinical goals can be uploaded following an Excel template so that it fits any clinical requirements of the users institutions. The platform incorporates treatment indications based on NTCP protocols. It has been shown in multiple studies that predicted dose distributions yield meaningful output when used with NTCP models for treatment selection decision support [5] [6]. This is a useful decision support tool for the clinical community.
130
  </p>
131
- </section>
132
-
133
-
134
- <section id="stopping-the-application">
135
- <h3>Stopping the application</h3>
136
  <ul>
137
  <li>
138
- <p>
139
- The nginx server will continue running, even when you close the web browser window. To completely stop the server, double click the <strong>'Stop_PARROT.bat'</strong> file in the <strong>'parrot'</strong> folder (or stop the nginx processes in the Task Manager).
140
- </p>
 
 
 
 
 
 
141
  </li>
 
142
  <li>
143
- <p>
144
- The Orthanc server runs as a Windows service and has to be stopped in the <strong>'Task Manager'</strong> (in the tab <strong>'Services'</strong>). Don't forget to start the service again when you want to use the <strong>'PARROT application'</strong>.
145
- </p>
146
  </li>
147
  </ul>
148
  </section>
149
- </section>
150
-
151
- <section id="user-guide">
152
- <h2>User guide</h2>
153
- <section id="user-guide">
154
- <h3>Load patient</h3>
155
- <iframe width="560" height="315" src="https://www.youtube.com/embed/iXPMgLM7UYs?si=mNdDxmjIKIThRAfA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
156
  </section>
157
- <section id="edit-contours">
158
- <h3>Edit contours</h3>
159
- <iframe width="560" height="315" src="https://www.youtube.com/embed/1YO3PYhbvzs?si=swi0iNqSAI0hjTSU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
160
  </section>
161
- </section>
162
- <section id="folder-structure">
163
- <h3>Folder Structure</h3>
164
- <p>The <strong>'parrot'</strong> folder contains the following files:</p>
165
- <ul>
166
- <li>
167
- <p><strong>'aiIntegration'</strong> contains the integrated trained AI models, the Python server environment and the API server directories.</p>
168
- </li>
169
- <li>
170
- <p><strong>'dist'</strong> contains the PARROT web application.</p>
171
- </li>
172
- <li>
173
- <p><strong>'logs'</strong> contains the log files of the nginx server.</p>
174
- </li>
175
- <li>
176
- <p><strong>'temp'</strong> contains the temporary files of nginx.</p>
177
- </li>
178
-
179
- <li>
180
- <p><strong>'tempai'</strong> contains the results of running the Python code. The user can configure the path for AI integration.</p>
181
- </li>
182
- <li>
183
- <p><strong>'License'</strong> contains the License of the application.</p>
184
- </li>
185
- <li>
186
- <p><strong>'nginx.exe'</strong> starts the nginx server (see the instructions above).</p>
187
- </li>
188
- <li>
189
- <p><strong>'Start_PARROT.bat'</strong> start the nginx server (see the instructions above).</p>
190
- </li>
191
- <li>
192
- <p><strong>'Stop_PARROT.bat'</strong> stop the ngnix server (see the instructions above).</p>
193
- </li>
194
- <li>
195
- <p><strong>'unins000.exe'</strong> uninstalls the application from the computer.</p>
196
- </li>
197
- </ul>
198
- </section>
199
- </div>
200
 
201
-
202
-
203
- <div class="col-lg-4">
204
- <nav id="right-menu" class="navbar navbar-light bg-light">
205
- <nav class="nav flex-column">
206
- <a class="nav-link" href="#installation">Installation</a>
207
- <a class="nav-link" href="#organisation">Organisation of the application</a>
208
- <ul>
209
- <li><a class="nav-link" href="#patient-management">Patient Management</a></li>
210
- <li><a class="nav-link" href="#study-management">Study Management</a></li>
211
- <li><a class="nav-link" href="#ai-models-management">AI Models Management</a></li>
212
- <li><a class="nav-link" href="#patient-modeling">Patient Modeling</a></li>
213
- <li><a class="nav-link" href="#plan-evaluation">Plan Evaluation</a></li>
214
- </ul>
215
- <a class="nav-link" href="#user-guide">User guide</a>
216
- <ul>
217
- <li><a class="nav-link" href="#load-patient">Load patient</a></li>
218
- <li><a class="nav-link" href="#edit-contours">Edit contours</a></li>
219
- </ul>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
220
  </nav>
221
- </nav>
222
  </div>
223
  </div>
224
- </div>
225
-
226
- <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
227
- <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script>
228
- <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
229
- <script>
230
- let mybutton = document.getElementById("topBtn");
231
- window.onscroll = function() {scrollFunction()};
232
-
233
- function scrollFunction() {
234
- console.log(mybutton.id);
235
- if (document.body.scrollTop > 50 || document.documentElement.scrollTop > 50) { mybutton.style.display = "block";}
236
- else { mybutton.style.display = "none";}
237
- }
238
-
239
- function topFunction() {
240
- document.body.scrollTop = 0;
241
- document.documentElement.scrollTop = 0;
242
- }
243
- </script>
244
 
245
  </body>
246
- </html>
 
 
1
  <!DOCTYPE html>
2
  <html lang="en">
3
+
4
  <head>
5
  <meta charset="UTF-8">
6
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
 
8
  <link rel="stylesheet" type="text/css" href="style.css">
9
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
10
  </head>
11
+
12
  <body>
13
 
14
+ <nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">
15
+ <a class="navbar-brand" href="#">PARROT</a>
16
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav"
17
  aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
18
+ <span class="navbar-toggler-icon"></span>
19
+ </button>
20
+ <div class="collapse navbar-collapse" id="navbarNav">
21
+ <div class="navbar-nav">
22
  <a class="nav-link" href="index.html">Home</a>
23
  <a class="nav-link active" href="#">Documentation</a>
24
  <a class="nav-link" href="ai_models.html">AI models</a>
25
  <a class="nav-link" href="contact.html">Contact</a>
26
+ </div>
27
  </div>
28
+ </nav>
29
+
30
+ <button id="topBtn" onclick="topFunction()">↑</button>
31
+
32
+ <div class="container mt-5">
33
+ <div class="row">
34
+ <div class="col-lg-9">
35
+ <h1 class="mb-4 mt-4">Documentation</h1>
36
+
37
+ <section id="PARROT">
38
+ <h2>PARROT: Platform for ARtificial intelligence guided Radiation Oncology Treatment</h2>
39
+ <p>
40
+ <strong>PARROT</strong> is a local web application. It provides different modules that allow
41
+ users to:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  </p>
 
 
 
 
 
43
  <ul>
44
  <li>
45
+ <p>Run AI models.</p>
46
+ </li>
47
+
48
+ <li>
49
+ <p>Visualize CT and (soon) MR images.</p>
50
+ </li>
51
+
52
+ <li>
53
+ <p>Visualize, predict or modify segmentation information.</p>
54
  </li>
55
+
56
  <li>
57
+ <p>Visualize, predict, evaluate, and compare dose distributions.</p>
 
 
58
  </li>
59
  </ul>
60
  </section>
61
+ <section id="installation">
62
+ <h2>Installation steps</h2>
63
+ <h3>PARROT</h3>
64
+ <p>There are two ways to install PARROT, downloading the executable file of the last release from
65
+ the <a href="index.html">Home</a> page is recommended. Otherwise, the code with building
66
+ instructions are also available on our <a href="https://gitlab.com/ai4miro/parrot">Gitlab
67
+ repository</a>.</p>
68
+
69
+ <h3>Orthanc</h3>
70
+ <p>
71
+ Patient data are stored using a Orthanc daemon, a lightweight, standalone DICOM server, which
72
+ ensures the confidentiality of patient files. To install Orthanc, either click on the link on
73
+ PARROT's home tab (see Figure 1) or click on the following link: <a
74
+ href="https://orthanc.uclouvain.be/downloads/windows-64/installers/OrthancInstaller-Win64-24.2.3.exe">Install
75
+ Orthanc</a>.
76
+ </p>
77
+ <figure>
78
+ <img src="img/install_orthanc.png" alt="Install orthanc" class="img-fluid mb-3">
79
+ <figcaption>Figure 1: Home screen, link to install Orthanc.</figcaption>
80
+ </figure>
81
+
82
+ <p class="warning">
83
+ ⚠ The Orthanc server will run on <a target="_blank" href="http://localhost:8042/">port 8042</a>
84
+ while nginx server for the application will run on <a target="_blank"
85
+ href="http://localhost:2000/">port 2000</a>.
86
+ </p>
87
  </section>
88
+
89
+ <section id="organisation">
90
+ <h2>Organisation of the application</h2>
91
+ The application is divided in multiple tabs that users can visit through the top navigation bar.
92
+ This section provides a description of each tabs and their features.
93
+ <section id="patient-management">
94
+ <h3>Patient Management</h3>
95
+ <p>Users can import patient DICOM data (files or zip) from this screen to a local <a
96
+ href="https://www.orthanc-server.com/">Orthanc</a> daemon. A list of patient data
97
+ present in the Orthanc server is displayed with summarized information. Users can load the
98
+ patient data to PARROT by clicking on the Load button. Users can delete a patient from the
99
+ server with the red arrow on the right.</p>
100
+ <figure>
101
+ <img src="img/screen_patient_management.PNG" alt="Patient Management Image"
102
+ class="img-fluid mb-3">
103
+ <figcaption>Figure 2: Patient Management screen.</figcaption>
104
+ </figure>
105
+ </section>
106
+
107
+ <section id="study-management">
108
+ <h3>Study Management</h3>
109
+ <p>A list of studies of the loaded patient present in the Orthanc server is displayed with
110
+ summarized information. Users can load the data into the app by clicking on the Load button.
111
+ The left icon displays more complete information from DICOM tags and users can delete a
112
+ patient study from the server with the red arrow on the right.</p>
113
+ <figure>
114
+ <img src="img/screen_study_management.png" alt="Study Management Image"
115
+ class="img-fluid mb-3">
116
+ <figcaption>Figure 3: Study Management screen.</figcaption>
117
+ </figure>
118
+ </section>
119
+
120
+ <section id="ai-marketplace">
121
+ <h3>AI Marketplace</h3>
122
+ <figure>
123
+ <img src="img/screen_ai_marketplace.png" alt="AI Marketplace Image"
124
+ class="img-fluid mb-3">
125
+ <figcaption>Figure 4: AI Marketplace screen.</figcaption>
126
+ </figure>
127
+ <p>Eight segmentation models and six dose prediction models are made available on HuggingFace and can be downloaded from the AI Marketplace screen (Figure 4).
128
+ These models are trained from state-of-the-art architectures such as
129
+ nnUNet <a href="#ref1">[1]</a>, SwinUNETR <a href="#ref2">[2]</a> and HDUNet <a href="#ref3">[3]</a> (<a href="ai_models.html">AI models</a>).
130
+
131
+ We distinguish two categories of models: the segmentation models and the dose prediction
132
+ models. A key difference between the two categories is that segmentation models require only
133
+ the anatomy of the patient (CT scan or MRI image) whereas dose prediction models also
134
+ require binary masks of tumor volumes (TV) and organs at risk (OARs). For that latter, we
135
+ implemented a dialog that allows users to map structures present in the current patient data
136
+ and the input required for the AI dose prediction model (Figure 7).</p>
137
+ <p>To be able to use these models, we also provide a Dockerfile that is automatically used to generate a Docker container to then run the models.</p>
138
+ </section>
139
+
140
+ <section id="ai-models-management">
141
+ <h3>Run AI Models</h3>
142
+ <figure>
143
+ <img src="img/screen_ai_models_management.png" alt="AI Models Management Image"
144
+ class="img-fluid mb-3">
145
+ <figcaption>Figure 5: AI Models Management screen.</figcaption>
146
+ </figure>
147
+ <p>To run a model prediction, the user simply clicks on the yellow Prediction button on the
148
+ right hand side of the model line. This will open a Python scripting editor to run the code
149
+ (Figure 6). Two choices are available to the user: either run the code locally or in one of
150
+ the Python environments provided. Users also have the flexibility to run their own
151
+ models by loading their own code in the Python scripting editor.
152
+ </p>
153
+ <div class="row">
154
+ <figure class="col-5">
155
+ <img src="img/python_code_editor.png" alt="Code editor"
156
+ class="img-fluid mb-3">
157
+ <figcaption>Figure 6: Embedded python code editor.</figcaption>
158
+ </figure>
159
+ <figure class="col-6">
160
+ <img src="img/contour_matching.png" alt="Input matching"
161
+ class="img-fluid mb-3">
162
+ <figcaption>Figure 7: Input matching.</figcaption>
163
+ </figure>
164
+ </div>
165
+ </section>
166
+
167
+ <section id="patient-modeling">
168
+ <h3>Patient Modeling</h3>
169
+ <figure>
170
+ <img src="img/screen_patient_modeling.png" alt="Patient Modeling Image"
171
+ class="img-fluid mb-3">
172
+ <figcaption>Figure 8: Patient Modeling screen.</figcaption>
173
+ </figure>
174
+ <p>Once the prediction is done, users can upload the result to the study to visualize the output in
175
+ the Patient Modeling screen (Figure 8).
176
+ </p>
177
+ </section>
178
+
179
+ <section id="plan-evaluation">
180
+ <h3>Plan Evaluation</h3>
181
+ <figure>
182
+ <img src="img/screen_plan_evaluation.png" alt="Plan Evaluation Image"
183
+ class="img-fluid mb-3">
184
+ <figcaption>Figure 9: Plan Evaluation screen.</figcaption>
185
+ </figure>
186
+ <p>A comprehensive display of two dose distributions comparison is presented on the last screen (see Figure 9).
187
+ The two dose distributions can originate from the importation step or result from the
188
+ inference of ai models. We provide a set of tools for comparison, such as DVH curves, dose
189
+ statistics, and the fulfillment of clinical goals. Clinical goals can be uploaded following
190
+ an Excel template so that it fits any clinical requirements of the users institutions. The
191
+ platform incorporates treatment indications based on NTCP protocols. It has been shown in
192
+ multiple studies that predicted dose distributions yield meaningful output when used with
193
+ NTCP models for treatment selection decision support <a href="#ref4">[4]</a><a href="#ref5">[5]</a>. This is a useful decision
194
+ support tool for the clinical community.
195
+ </p>
196
+ </section>
197
+ <section>
198
+ <h3>References</h3>
199
+ <p id="ref1">[1] Isensee, F., Jaeger, P. F., Kohl, S. A., Petersen, J., & Maier-Hein, K. H. (2021). nnU-Net: a self-configuring
200
+ method for deep learning-based biomedical image segmentation. Nature methods, 18(2), 203-211.</p>
201
+ <p id="ref2">[2] Hatamizadeh, A., Nath, V., Tang, Y., Yang, D., Roth, H. and Xu, D., 2022. Swin UNETR: Swin Transformers for Semantic Segmentation of Brain Tumors in MRI Images. arXiv preprint arXiv:2201.01266.</p>
202
+ <p id="ref3">[3] Nguyen D, Jia X, Sher D, Lin MH, Iqbal Z, Liu H, Jiang S. 3D radiotherapy dose prediction on head and neck cancer patients with a hierarchically densely connected U-net deep learning architecture. Phys Med Biol. 2019 Mar 18;64(6):065020. doi: 10.1088/1361-6560/ab039b. PMID: 30703760.</p>
203
+ <p id="ref4">[4] Huet-Dastarac M, Michiels S, Rivas ST, et al. Patient selection for proton therapy using Normal Tissue Complication Probability with deep learning dose prediction for oropharyngeal cancer. Med Phys. 2023; 50: 6201–6214. https://doi.org/10.1002/mp.16431</p>
204
+ <p id="ref5">[5] Draguet C., Barragán-Montero A., Chocan Vera M., Thomas M., Populaire P., Defraene G., Haustermans K., Lee J., Sterpin E.,
205
+ Automated clinical decision support system with deep learning dose prediction and NTCP models to evaluate treatment complications in patients with esophageal cancer, Radiotherapy and Oncology, Volume 176, 2022, https://doi.org/10.1016/j.radonc.2022.08.031.</p>
206
+ </section>
207
+
208
+
209
+ <section id="stopping-the-application">
210
+ <h3>Stopping the application</h3>
211
+ <ul>
212
+ <li>
213
+ <p>
214
+ The nginx server will continue running, even when you close the web browser window.
215
+ To completely stop the server, double click the <strong>'Stop_PARROT.bat'</strong>
216
+ file in the <strong>'parrot'</strong> folder (or stop the nginx processes in the
217
+ Task Manager).
218
+ </p>
219
+ </li>
220
+ <li>
221
+ <p>
222
+ The Orthanc server runs as a Windows service and has to be stopped in the
223
+ <strong>'Task Manager'</strong> (in the tab <strong>'Services'</strong>). Don't
224
+ forget to start the service again when you want to use the <strong>'PARROT
225
+ application'</strong>.
226
+ </p>
227
+ </li>
228
+ </ul>
229
+ </section>
230
  </section>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
231
 
232
+ <section id="user-guide">
233
+ <h2>User guide</h2>
234
+ <section id="user-guide">
235
+ <h3>Load patient</h3>
236
+ <iframe width="560" height="315"
237
+ src="https://www.youtube.com/embed/iXPMgLM7UYs?si=mNdDxmjIKIThRAfA"
238
+ title="YouTube video player" frameborder="0"
239
+ allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
240
+ referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
241
+ </section>
242
+ <section id="edit-contours">
243
+ <h3>Edit contours</h3>
244
+ <iframe width="560" height="315"
245
+ src="https://www.youtube.com/embed/1YO3PYhbvzs?si=swi0iNqSAI0hjTSU"
246
+ title="YouTube video player" frameborder="0"
247
+ allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
248
+ referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
249
+ </section>
250
+ </section>
251
+
252
+ </div>
253
+
254
+
255
+
256
+ <div class="col-lg-3">
257
+ <nav id="right-menu" class="navbar navbar-light bg-light">
258
+ <nav class="nav flex-column">
259
+ <a class="nav-link" href="#installation">Installation</a>
260
+ <a class="nav-link" href="#organisation">Organisation of the application</a>
261
+ <ul>
262
+ <li><a class="nav-link" href="#patient-management">Patient Management</a></li>
263
+ <li><a class="nav-link" href="#study-management">Study Management</a></li>
264
+ <li><a class="nav-link" href="#ai-models-management">AI Models Management</a></li>
265
+ <li><a class="nav-link" href="#patient-modeling">Patient Modeling</a></li>
266
+ <li><a class="nav-link" href="#plan-evaluation">Plan Evaluation</a></li>
267
+ </ul>
268
+ <a class="nav-link" href="#user-guide">User guide</a>
269
+ <ul>
270
+ <li><a class="nav-link" href="#load-patient">Load patient</a></li>
271
+ <li><a class="nav-link" href="#edit-contours">Edit contours</a></li>
272
+ </ul>
273
+ </nav>
274
  </nav>
275
+ </div>
276
  </div>
277
  </div>
278
+
279
+ <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
280
+ <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script>
281
+ <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
282
+ <script>
283
+ let mybutton = document.getElementById("topBtn");
284
+ window.onscroll = function () { scrollFunction() };
285
+
286
+ function scrollFunction() {
287
+ console.log(mybutton.id);
288
+ if (document.body.scrollTop > 50 || document.documentElement.scrollTop > 50) { mybutton.style.display = "block"; }
289
+ else { mybutton.style.display = "none"; }
290
+ }
291
+
292
+ function topFunction() {
293
+ document.body.scrollTop = 0;
294
+ document.documentElement.scrollTop = 0;
295
+ }
296
+ </script>
 
297
 
298
  </body>
299
+
300
+ </html>
img/dani.jpeg ADDED
img/install_orthanc.svg ADDED
img/margerie.jpg ADDED
img/pablo.jpeg ADDED
img/sylvain.jpeg ADDED
img/team.jpeg ADDED
img/wei.jpg ADDED