Mercurial > hg > orthanc-book
annotate Sphinx/source/plugins/tcia.rst @ 903:25bbeb754420
note about shared network drives
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 20 Dec 2022 08:22:35 +0100 |
parents | 815f70009ec2 |
children | 5c1ce758f748 |
rev | line source |
---|---|
758 | 1 .. _tcia: |
2 | |
3 | |
4 TCIA plugin | |
5 =========== | |
6 | |
7 .. contents:: | |
8 | |
770
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
9 This **official** plugin by the `ICTEAM institute of UCLouvain |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
10 <https://uclouvain.be/en/research-institutes/icteam>`__ extends |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
11 Orthanc with a Web interface that can be used to import open-data |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
12 medical images from `The Cancer Imaging Archive (TCIA) |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
13 <https://www.cancerimagingarchive.net/>`__, and serve them immediately |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
14 using Orthanc. |
760
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
15 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
16 The plugin can be used to import so-called "cart spreadsheet" |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
17 generated by the `NBIA Search Client |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
18 <https://nbia.cancerimagingarchive.net/nbia-search/>`__, or to browse |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
19 the image collections of TCIA thanks to its `REST API |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
20 <https://wiki.cancerimagingarchive.net/display/Public/TCIA+REST+API+Guide>`__. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
21 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
22 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
23 Compilation |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
24 ----------- |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
25 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
26 .. highlight:: bash |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
27 |
770
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
28 Official releases can be `downloaded from the Orthanc homepage |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
29 <https://www.orthanc-server.com/browse.php?path=/plugin-tcia>`__. As |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
30 an alternative, the `repository containing the source code |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
31 <https://hg.orthanc-server.com/orthanc-tcia/>`__ can be accessed using |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
32 Mercurial. |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
33 |
760
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
34 The procedure to compile this plugin is similar of that for the |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
35 :ref:`core of Orthanc <binaries>`. The following commands should work |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
36 for most UNIX-like distribution (including GNU/Linux):: |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
37 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
38 $ mkdir Build |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
39 $ cd Build |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
40 $ cmake .. -DSTATIC_BUILD=ON -DCMAKE_BUILD_TYPE=Release |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
41 $ make |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
42 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
43 The compilation will produce a shared library ``OrthancTcia`` |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
44 that contains the TCIA plugin for Orthanc. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
45 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
46 Pre-compiled Linux Standard Base (LSB) binaries `can be downloaded |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
47 <https://lsb.orthanc-server.com/plugin-tcia/>`__. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
48 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
49 Pre-compiled binaries for Microsoft Windows and macOS `are also |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
50 available |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
51 <https://www.orthanc-server.com/browse.php?path=/plugin-tcia>`__. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
52 |
882
815f70009ec2
highlight osimis/orthanc docker images since jodogne/orthanc images are currently not up-to-date
Alain Mazy <am@osimis.io>
parents:
770
diff
changeset
|
53 Furthermore, the ``jodogne/orthanc-plugins`` :ref:`Docker images <docker>` |
815f70009ec2
highlight osimis/orthanc docker images since jodogne/orthanc images are currently not up-to-date
Alain Mazy <am@osimis.io>
parents:
770
diff
changeset
|
54 and ``osimis/orthanc`` :ref:`Docker images <docker-osimis>` also contain the |
770
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
55 plugin. |
760
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
56 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
57 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
58 Configuration |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
59 ------------- |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
60 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
61 You of course first have to :ref:`install Orthanc <compiling>`. Once |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
62 Orthanc is installed, you must change the :ref:`configuration file |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
63 <configuration>` to tell Orthanc where it can find the plugin: This is |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
64 done by properly modifying the ``Plugins`` option. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
65 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
66 You then have to set the two following options: |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
67 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
68 * The setting ``Enable`` in section ``Tcia`` must be set to ``true`` |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
69 to enable the TCIA plugin. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
70 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
71 * The setting ``HttpsCACertificates`` must contain a path to a file |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
72 containing a list of `trusted Certificate Authorities (CA) |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
73 <https://curl.haxx.se/docs/sslcerts.html>`__. Depending on your |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
74 operating system, this file can be found as follows: |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
75 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
76 - On Debian-based system, the standard file |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
77 ``/etc/ssl/certs/ca-certificates.crt`` can be used. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
78 - On other systems (including Microsoft Windows), the cURL project |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
79 provides `CA certificates |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
80 <https://curl.haxx.se/docs/caextract.html>`__ that are extracted |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
81 from Mozilla. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
82 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
83 .. highlight:: json |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
84 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
85 On Ubuntu, you could for instance use the following minimalist |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
86 configuration file:: |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
87 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
88 { |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
89 "HttpsCACertificates" : "/etc/ssl/certs/ca-certificates.crt", |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
90 "Plugins" : [ |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
91 "/home/user/OrthancTcia/Build/libOrthancTcia.so" |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
92 ], |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
93 "Tcia" : { |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
94 "Enable" : true |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
95 } |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
96 } |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
97 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
98 .. highlight:: text |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
99 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
100 Orthanc must of course be restarted after the modification of its |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
101 configuration file. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
102 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
103 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
104 Usage |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
105 ----- |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
106 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
107 Once Orthanc Explorer is opened, a button entitled "The Cancer Imaging |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
108 Archive" will show up at the bottom of the page. Clicking on this |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
109 button will open the TCIA interface for Orthanc: |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
110 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
111 .. image:: ../images/tcia-interface.png |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
112 :align: center |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
113 :width: 640 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
114 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
115 As can be seen, this Web application allows to both import a cart from |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
116 the NBIA Search Client, and to browse the various collections of |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
117 medical images from TCIA. |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
118 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
119 The following screenshot illustrates how to export a cart using the |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
120 NBIA Search Client, that can then be imported using this plugin: |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
121 |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
122 .. image:: ../images/tcia-nbia-export.png |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
123 :align: center |
e9da78572539
documentation of tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
758
diff
changeset
|
124 :width: 640 |
770
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
125 |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
126 The TCIA plugin creates a job to do the import. This implies that an |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
127 import can be monitored, paused or stopped using the :ref:`REST API |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
128 for Orthanc jobs <jobs>`. |
9978fb958ee2
precisions about tcia
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
760
diff
changeset
|
129 |