Mercurial > hg > orthanc-stone
annotate TODO @ 2161:e65fe2e50fde dicom-sr tip
integration mainline->dicom-sr
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 27 Sep 2024 22:34:17 +0200 |
parents | 5e78572f0b2e |
children |
rev | line source |
---|---|
1716 | 1 |
2 ====================== | |
3 == Stone Web viewer == | |
4 ====================== | |
5 | |
6 ------------ | |
7 Improvements | |
8 ------------ | |
9 | |
2137 | 10 * Update OrthancFramework to 1.12.1 to benefit from: |
11 https://orthanc.uclouvain.be/hg/orthanc/rev/57c0fba5e5c7 | |
12 | |
1830 | 13 * Save/load annotations as attachments of their parent series |
14 (including detection of collisions thanks to revisions). | |
2104
5653b6335642
migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2073
diff
changeset
|
15 https://orthanc.uclouvain.be/book/faq/features.html#metadata-attachments |
1830 | 16 |
1847 | 17 * Internationalization and translations (i18n). Some possible libraries: |
1716 | 18 https://phrase.com/blog/posts/the-best-javascript-i18n-libraries/ |
19 | |
20 * Configurable keyboard shortcuts. See Osimis Web viewer: | |
21 https://bitbucket.org/osimis/osimis-webviewer-plugin/src/master/doc/default-configuration.json | |
22 | |
1730
af4a2d08549c
preparing for release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1726
diff
changeset
|
23 * Handle mobile gestures. |
af4a2d08549c
preparing for release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1726
diff
changeset
|
24 |
1847 | 25 * Display GSPS layers (Grayscale Softcopy Presentation State). |
26 | |
1930 | 27 * Use "ImagerPixelSpacing" (0018,1164) tag if "PixelSpacing" is missing |
28 | |
29 * Override which tags are displayed in the image information in the | |
30 top-left, top-right and bottom-right pannels. | |
31 | |
32 For reference, in the case of MRI, "Echo Time" (0018,0081), | |
33 "Repetition Time" (0018,0080), "Magnetic Field Strength (0018,0087) | |
34 and "Slice Thickness" (0018,0050) would be useful to have. | |
35 | |
36 https://groups.google.com/g/orthanc-users/c/_kDp_ieYTgI/m/KHBxpSSOCQAJ | |
37 | |
1995 | 38 * Add a button (and/or a keyboard shortcut) to select the next series |
39 in the main viewport. In Osimis viewer, this was implemented by | |
40 up/down arrow keys (prev/next series). | |
41 https://groups.google.com/g/orthanc-users/c/u_lH9aqKsdw/m/KQ7U9CkiAAAJ. | |
1716 | 42 |
2021 | 43 * Minor: Rotate the anchors of the text after rotation of the display. |
44 | |
2112 | 45 * Order the studies in the left column according to their Instance |
46 Number (0020,0013). Suggestion by Joseph Maratt. | |
47 | |
2137 | 48 * Add a button to download PDF: |
49 https://discourse.orthanc-server.org/t/printing-pdf-reports-in-stone-of-orthanc/4731 | |
50 | |
2140 | 51 * Open using Orthanc parent/study/series identifier, or using DICOM |
52 accession number: | |
53 https://discourse.orthanc-server.org/t/stone-web-viewer-what-is-the-link-to-use-through-the-access-number/4808 | |
54 | |
2141 | 55 * Add configuration options to disable annotations and measurements: |
56 https://discourse.orthanc-server.org/t/niveles-de-acceso-y-permisos-a-funcionalidades-del-stone-web-viewer/5106 | |
57 | |
2021 | 58 |
1867 | 59 ------------ |
60 Known issues | |
61 ------------ | |
62 | |
1925 | 63 * Compatibility with Google Chrome browser on iPad Air 4: |
64 https://groups.google.com/g/orthanc-users/c/7SgedbIiA2k/ | |
65 https://groups.google.com/g/orthanc-users/c/RfQJFgkOUYY/m/za7rkcLNBQAJ | |
66 | |
1830 | 67 ----------------- |
68 Code refactorings | |
69 ----------------- | |
70 | |
71 * Replace "ParsedDicomCache" by "Orthanc::ParsedDicomCache" (new in | |
72 Orthanc framework 1.9.0) | |
73 | |
1938 | 74 * Replace calls to /studies/.../series/.../metadata by calls to |
75 /instances?StudyInstanceUID=...&SeriesInstanceUID=...&includefield=...&includefield=... | |
2054 | 76 to benefit from ExtraMainDicomTags stored in DB and avoid reading from disk when not necessary. |
77 This way, we request only the tags that the viewer is going to use. | |
78 The /metadata requests all tags and therefore will read from the storage unless you have | |
79 specified "DicomWeb.SeriesMetadata": "MainDicomTags"; this is an acceptable workaround | |
80 for now but the first approach is cleaner and removes dependencies between the DicomWeb config | |
81 and stone. It might also be more efficient on other backends as well. | |
1830 | 82 |
1716 | 83 -------- |
84 Wishlist | |
85 -------- | |
86 | |
87 * Display video files even if the Orthanc REST API is not available | |
88 (using pure DICOMweb). This could possible be done using the | |
89 DICOMweb Bulk Data URI, and/or a dedicated JavaScript video player. | |
90 | |
91 * "Start the Viewer with a specific Dicom file and display the | |
92 specific images. For example I start the Viewer with dicomFile and | |
93 open slide1, slide4, slide8, slide12 ?" | |
94 https://groups.google.com/g/orthanc-users/c/6KSe0WEEfco/m/nOIl57EzAAAJ | |
95 | |
1717
391c798e4dae
fix for KNIX sample dataset
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1716
diff
changeset
|
96 * Configuration option related to the "DicomSource" class in order to |
391c798e4dae
fix for KNIX sample dataset
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1716
diff
changeset
|
97 systematically request server-side transcoding. |
391c798e4dae
fix for KNIX sample dataset
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1716
diff
changeset
|
98 |
1753 | 99 * Fully implement "Basic Image Review" profile from IHE: |
100 https://wiki.ihe.net/index.php/Basic_Image_Review | |
101 | |
1848 | 102 * Support hanging protocols (automatically adapt the layout given the |
103 type of modality to be displayed): | |
104 https://groups.google.com/g/orthanc-users/c/bGtK3q9ZUmg/m/gr8kCcVWCAAJ | |
105 | |
1932 | 106 * Create secondary capture DICOM images with the annotations burned in: |
107 https://groups.google.com/g/orthanc-users/c/T3h-6dIjvww/m/sVtHxwT_AQAJ | |
108 | |
1933 | 109 * Configure the default layout (e.g. 1x2 instead of 1x1) and the |
110 default view of the left toolbox: | |
111 https://groups.google.com/g/orthanc-users/c/y2B_RIzegNc/m/H9MhY9y2AgAJ | |
112 | |
1935 | 113 * Display the PatientName & ID in the page title such that it appears |
1934 | 114 in the browser tab name |
115 https://groups.google.com/g/orthanc-users/c/F7cK8axehfA/m/ku-CPsvbAQAJ | |
1716 | 116 |
2028 | 117 * Configuration option (plus GET parameter in the URL) to set where to |
118 start in the series by default (plus possibly a dictionary mapping | |
119 SOP Class UIDs for per-modality setting): | |
120 https://groups.google.com/g/orthanc-users/c/tHPMBHe-Z-A/m/XXlRBdhoAgAJ | |
121 | |
1930 | 122 -------- |
123 Won't do | |
124 -------- | |
125 | |
126 * Debian packaging, which requires source-level build dependencies: | |
127 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=975069#22 | |
128 | |
129 => A solution for AMD64 architectures is to use the standalone | |
130 Debian repository that is provided by Sebastien Jodogne: | |
2104
5653b6335642
migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2073
diff
changeset
|
131 https://orthanc.uclouvain.be/book/users/cookbook.html#obtaining-binaries |
1930 | 132 |
133 | |
134 | |
1716 | 135 ================================== |
136 == Stone of Orthanc C++ library == | |
137 ================================== | |
0 | 138 |
139 ------- | |
140 General | |
141 ------- | |
142 | |
143 * Documentation | |
144 | |
145 ------------- | |
146 Optimizations | |
147 ------------- | |
148 | |
1590 | 149 * Speedup RT-STRUCT projection in sagittal + coronal views |
150 * Speedup RT-STRUCT loading | |
1726
0257339b0884
new method ParseDicomFromWadoCommand::IsSameCommand()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1719
diff
changeset
|
151 * "ParseDicomFromOrthanc": new command |
0 | 152 |
153 ----------------- | |
154 Platform-specific | |
155 ----------------- | |
156 | |
1716 | 157 * WebAssembly: Possible issue in "emscripten_set_timeout()" if the |
158 Oracle is destroyed while a sleep event is still being processed | |
159 (the callback payload would be invalid). This is not a problem as | |
160 long as the Oracle singleton is never destroyed. A cleaner solution | |
161 would be similar to "WebAssemblyViewport::CreateObjectCookie()". | |
162 | |
1995 | 163 * Add precompiled headers for Microsoft Visual Studio. |