845
|
1 .. _orthanc-explorer-2:
|
|
2
|
|
3
|
|
4 Orthanc Explorer 2 plugin
|
|
5 =========================
|
|
6
|
|
7 .. contents::
|
|
8
|
|
9
|
|
10 Introduction
|
|
11 ------------
|
|
12
|
|
13 This plugin provides a new User Interface (UI) to Orthanc. It aims at being
|
|
14 more user-friendly, more configurable and more evolutive than the default
|
|
15 Orthanc UI which was developed mainly for testing/administrative purpose.
|
|
16
|
|
17 .. image:: ../images/OE2-screenshot-study-list.png
|
|
18 :align: center
|
|
19 :width: 1000px
|
|
20
|
|
21 |
|
|
22
|
|
23 Note that a major difference between the legacy UI and Orthanc Explorer 2 (OE2)
|
|
24 is that OE2 works only at the study level, not the patient level. The main page is
|
|
25 the study list in which, of course, you can apply a filter to display only the studies of a single patient.
|
|
26
|
924
|
27 Since version 0.7.0, once connected to `Keycloak <https://www.keycloak.org/>`__ and the `orthanc-auth-service <https://github.com/orthanc-team/orthanc-auth-service>`__,
|
|
28 OE2 is able to handle user permissions and sharing of links to access a single study. This is demonstrated in `this sample <https://github.com/orthanc-team/orthanc-auth-service/tree/main/minimal-setup/keycloak>`__.
|
845
|
29
|
|
30 How to get it ?
|
|
31 ---------------
|
|
32
|
|
33 The source code is available on `GitHub <https://github.com/orthanc-server/orthanc-explorer-2>`__.
|
|
34
|
|
35 Binaries are included in:
|
|
36
|
1093
|
37 - The :ref:`orthancteam/orthanc Docker image <docker-orthancteam>`,
|
|
38 - The :ref:`jodogne/orthanc-plugins Docker image <docker>`,
|
|
39 - The `Windows installers <https://orthanc.uclouvain.be/downloads/windows-64/installers/index.html>`__,
|
|
40 - The `macOS packages <https://orthanc.uclouvain.be/downloads/macos/packages/index.html>`__.
|
845
|
41
|
1093
|
42 Precompiled binaries of the plugin alone are also available for multiple platforms on the `official download site <https://orthanc.uclouvain.be/downloads/index.html>`__.
|
|
43
|
845
|
44 Release notes are available `here <https://github.com/orthanc-server/orthanc-explorer-2/blob/master/release-notes.md>`__.
|
|
45
|
|
46 Depending on the configuration, the plugin can replace the default Orthanc UI you are redirected to when accessing orthanc at `http://localhost:8042/ <http://localhost:8042/>`__.
|
|
47 In any case, the new and old UI can coexist:
|
|
48
|
|
49 - Orthanc Explorer 2 is available at `http://localhost:8042/ui/app/ <http://localhost:8042/ui/app/>`__
|
|
50 - Legacy UI remains available at `http://localhost:8042/app/explorer.html <http://localhost:8042/app/explorer.html>`__
|
|
51
|
|
52
|
|
53 Configuration
|
|
54 -------------
|
|
55
|
|
56 .. highlight:: json
|
|
57
|
|
58 The plugin must be configured through a configuration file. The minimal configuration to include in your orthanc configuration file is::
|
|
59
|
|
60 "OrthancExplorer2" : {
|
|
61 "Enable": true,
|
|
62 "IsDefaultOrthancUI": true
|
|
63 }
|
|
64
|
|
65 There are many more options that are documented in the
|
|
66 `default configuration file <https://github.com/orthanc-server/orthanc-explorer-2/blob/master/Plugin/DefaultConfiguration.json>`__.
|
|
67
|
|
68
|
|
69 Advanced features
|
|
70 -----------------
|
|
71
|
924
|
72 User permissions and web diffusion
|
|
73 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
74
|
|
75 Check the documentation of the `orthanc-auth-service <https://github.com/orthanc-team/orthanc-auth-service>`__
|
|
76 companion web service that provides user permissions and sharing of studies.
|
|
77
|
915
|
78
|
|
79 Direct access to a selection of studies
|
|
80 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
81
|
845
|
82 You may open the OE2 interface directly on a specific study or patient by specifying DICOM Tags directly in the URL.
|
|
83 e.g::
|
|
84
|
869
|
85 http://localhost:8042/ui/app/#/filtered-studies?PatientID="00000169"
|
845
|
86 http://localhost:8042/ui/app/#/filtered-studies?StudyDate=20220512-20220513&ModalitiesInStudy=CR\DX
|
869
|
87 http://localhost:8042/ui/app/#/filtered-studies?StudyInstanceUID="1.2.3"
|
|
88 http://localhost:8042/ui/app/#/filtered-studies?StudyInstanceUID="1.2.3"&expand
|
|
89 http://localhost:8042/ui/app/#/filtered-studies?StudyInstanceUID="1.2.3"&expand=study
|
|
90 http://localhost:8042/ui/app/#/filtered-studies?StudyInstanceUID="1.2.3"&expand=series
|
|
91
|
|
92 By default, OE2 will add a wildcard ``*`` at the beginning and at the end of the search text. Therefore, searching
|
|
93 for ``PatientID=1234`` will actually search for ``PatientID=*1234*``. If you do not want to have these extra wildcards
|
|
94 added, you should use ``"`` at the beginning and/or at the end of the search text. Therefore, searching for
|
|
95 ``PatientID="1234"`` will return only the studies whose ``PatientID`` is exactly ``1234``.
|
|
96 These ``"`` can also be used in the User Interface search fields.
|
845
|
97
|
|
98
|
915
|
99 DICOM Modifications
|
|
100 ^^^^^^^^^^^^^^^^^^^
|
|
101
|
|
102 Since version 0.6.0, it is possible to edit some of the DICOM Tags directly in the User Interface.
|
|
103 :ref:`DICOM Modification <anonymization>` is quite a complex topic that is provided by Orthanc
|
|
104 Rest API. The Orthanc Explorer 2 User Interface aims at simplifying its use but is also limiting
|
|
105 it to common use cases mainly related to correcting errors in Patient and Study DICOM Tags.
|
|
106
|
|
107 At study level, it is possible to:
|
|
108
|
|
109 - Modify a Study
|
|
110
|
|
111 - to attach it to another existing patient by providing the ``PatientID`` if e.g. the study was
|
|
112 acquired for the wrong patient.
|
|
113 - to edit the patient in all its studies if e.g. the ``PatientName`` was misspelled.
|
|
114 - correct patient or study tags in this study only if e.g. the ``StudyDescription`` was incorrect.
|
|
115
|
|
116 - Anonymize a Study and possibly provide the anonymized ``PatientID`` or ``PatientName`` to
|
|
117 e.g. force it to a specific identifier for a clinical study.
|
|
118
|
|
119 .. image:: ../images/OE2-modify-study.png
|
|
120 :align: center
|
|
121 :width: 1000px
|
|
122
|
|
123 |
|
|
124
|
|
125
|
|
126 At series level, it is possible to:
|
|
127
|
|
128 - Modify a Series
|
|
129
|
|
130 - to move it to another existing study by providing the ``StudyInstanceUID`` if e.g. the operator
|
|
131 forgot to switch patient in the modality
|
|
132 - to move it to a new study if e.g. the operator forgot to switch patient in the modality
|
|
133 - correct series tags in this series only if e.g. the ``SeriesDescription`` was incorrect.
|
|
134
|
|
135 - Anonymize a Series and possibly provide the anonymized ``PatientID`` or ``PatientName`` to
|
|
136 e.g. force it to a specific identifier for a clinical study.
|
|
137
|
|
138 .. image:: ../images/OE2-modify-series.png
|
|
139 :align: center
|
|
140 :width: 1000px
|
|
141
|
|
142 |
|
|
143
|
|
144 Each time you modify a study, the user interface might propose you 3 modification modes related to
|
|
145 the handling of the :ref:`DICOM identifiers <dicom-identifiers>` .
|
|
146
|
|
147 - You may modify the original study and have Orthanc generates new ``StudyInstanceUID``, ``SeriesInstanceUID``
|
|
148 and ``SOPInstanceUID`` DICOM Tags. This means the that orthanc identifiers will change and the source
|
|
149 study will be deleted.
|
|
150 - You may keep the original ``StudyInstanceUID``, ``SeriesInstanceUID`` and ``SOPInstanceUID`` DICOM Tags.
|
|
151 This means the that orthanc identifiers will not change (unless you also change the ``PatientID`` and the
|
916
|
152 study will be modified "in place").
|
915
|
153 - You may keep the original study and create a modified copy. In this case, of course, the new modified copy
|
|
154 will have a different orthanc identifiers.
|
|
155
|
|
156
|
|
157 .. image:: ../images/OE2-modify-options.png
|
|
158 :align: center
|
|
159 :width: 700px
|
|
160
|
|
161 |
|
|
162
|
|
163 There are many options related to DICOM Modification in the plugin
|
|
164 `default configuration file <https://github.com/orthanc-server/orthanc-explorer-2/blob/master/Plugin/DefaultConfiguration.json>`__.
|
|
165 Check the ``Modifications`` section and the ``PatientMainTags``, ``StudyMainTags``, ``SeriesMainTags``, ``EnableAnonymization``
|
|
166 and ``EnableModification`` configurations.
|
|
167
|
|
168
|
922
|
169 Retrieve a study from a distant modality and open the viewer
|
|
170 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
845
|
171
|
922
|
172 If you want to open e.g. the :ref:`Stone Web viewer <stone_webviewer>`:: on a study that is not yet
|
|
173 stored in Orthanc but that you know that it is stored in a remote modality, you may use this endpoint::
|
|
174
|
923
|
175 http://localhost:8042/ui/app/retrieve-and-view.html?StudyInstanceUID=1.2.3....&modality=pacs&viewer=stone-viewer
|
845
|
176
|
922
|
177 This will first check if the study is already in Orthanc, if not, it will retrieve it from the modality and,
|
|
178 once the transfer is complete, open the viewer.
|
845
|
179
|
922
|
180 This feature has been introduced in v 0.7.0.
|
845
|
181
|
|
182
|
1044
|
183 Theming the interface
|
|
184 ^^^^^^^^^^^^^^^^^^^^^
|
|
185
|
|
186 Since v 1.3.0, one can chose between 2 default themes: ``dark`` and ``light`` through the ``"Theme"`` configuration.
|
|
187
|
|
188 Furthermore, it is also possible to customize further the UI by providing a custom logo from a file or url.
|
|
189
|
|
190 For advanced users, it is also possible to provide a custom `CSS <https://en.wikipedia.org/wiki/CSS>`__ to customize
|
|
191 the UI appearance. You may get inspiration from the default `dark <https://github.com/orthanc-server/orthanc-explorer-2/blob/master/WebApplication/src/assets/css/defaults-dark.css>`__
|
|
192 and `light <https://github.com/orthanc-server/orthanc-explorer-2/blob/master/WebApplication/src/assets/css/defaults-light.css>`__ CSS::
|
|
193
|
|
194 {
|
|
195 "OrthancExplorer2": {
|
1045
|
196 "Theme": "light", // or "dark"
|
|
197 "CustomCssPath": "/home/my/path/to/custom.css" // optional customized CSS
|
|
198 "CustomLogoUrl": "https://my.company/logo.png", // optional custom logo from url
|
|
199 "CustomLogoPath": "/home/my/path/to/logo.png", // optional custom logo from file
|
|
200 "UiOptions" : {
|
|
201 // ...
|
1044
|
202 }
|
|
203 }
|
|
204 }
|
|
205
|
|
206 You'll also find a full sample of OE2 customization `here <https://github.com/orthanc-server/orthanc-setup-samples/tree/master/docker/oe2-custom>`__.
|
|
207
|
|
208
|
845
|
209 Bug reports & support
|
|
210 ---------------------
|
|
211
|
1044
|
212 As usual, you can get support and report issues from the `Orthanc Users group <https://discourse.orthanc-server.org/>`__.
|
845
|
213
|
|
214 You may also directly introduce bugs or feature requests in `GitHub <https://github.com/orthanc-server/orthanc-explorer-2/issues>`__.
|
|
215
|
922
|
216 The plugin is currently maintained by the `Orthanc Team <https://orthanc.team/>`__ who, like many of you, enjoys
|
|
217 receiving a salary for his work. Feel free to hire us if you need a specific feature or bug fixed.
|
845
|
218
|
|
219 Donations to `Open Collective <https://opencollective.com/orthanc>`__ may also be used to maintain/develop this plugin.
|