Mercurial > hg > orthanc-stone
comparison README @ 1590:7b963bccafef
updated README
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 22 Oct 2020 18:39:03 +0200 |
parents | README.md@c53a4667f895 |
children | 8563ea5d8ae4 |
comparison
equal
deleted
inserted
replaced
1589:8c5f9864545f | 1590:7b963bccafef |
---|---|
1 Stone of Orthanc | |
2 ================ | |
3 | |
4 General Information | |
5 ------------------- | |
6 | |
7 This repository contains the source code of Stone of Orthanc. | |
8 | |
9 Stone of Orthanc is a lightweight, cross-platform C++ framework for | |
10 the rendering of medical images. It is a companion toolkit to the main | |
11 Orthanc DICOM server. It notably features support for MPR (multiplanar | |
12 reconstruction of volume images), PET-CT fusion, and accurate physical | |
13 world coordinates. | |
14 | |
15 Stone of Orthanc can take advantage of OpenGL/WebGL to accelerate 2D | |
16 rendering using the GPU. 3D operations such as reslicing are done | |
17 using CPU. | |
18 | |
19 Stone of Orthanc is compatible with any GUI framework (such as Qt, | |
20 wxWidgets, MFC...). The provided sample applications use the SDL | |
21 framework. | |
22 | |
23 Very importantly, Stone of Orthanc is compatible with WebAssembly, | |
24 which makes it suitable to render medical images in Web applications. | |
25 | |
26 As a library for medical imaging, Stone of Orthanc also comes with | |
27 primitives to download, parse and handle DICOM images. These | |
28 primitives can use either the REST API of the Orthanc server, or the | |
29 DICOMweb protocol. Primitives to deal with radiotherapy or nuclear | |
30 medicine studies are available as well (image fusion using layers). | |
31 | |
32 Besides the low-level Stone of Orthanc library, this repository also | |
33 contains the Stone Web viewer. The Stone Web viewer is a | |
34 fully-featured Web viewer that can be either used as a plugin to | |
35 Orthanc, or as a standalone viewer if using DICOMweb. | |
36 | |
37 | |
38 Comparison | |
39 ---------- | |
40 | |
41 Stone of Orthanc is quite similar to two other well-known toolkits: | |
42 | |
43 * Cornerstone, a client-side JavaScript toolkit to display medical | |
44 images in Web browsers, by Chris Hafey <chafey@gmail.com>: | |
45 https://github.com/chafey/cornerstone | |
46 | |
47 Contrarily to Cornerstone, Stone of Orthanc is written in C++ and | |
48 can be embedded into native, heavyweight applications. | |
49 | |
50 * VTK, a C++ toolkit for scientific visualization, by Kitware: | |
51 http://www.vtk.org/ | |
52 | |
53 Contrarily to VTK, Stone of Orthanc is much more simple, and only | |
54 uses the GPU for 2D rendering. | |
55 | |
56 | |
57 Dependencies | |
58 ------------ | |
59 | |
60 Stone of Orthanc is based upon the following projects: | |
61 | |
62 * Orthanc, a lightweight Vendor Neutral Archive (DICOM server): | |
63 http://www.orthanc-server.com/ | |
64 | |
65 * Cairo and pixman, a cross-platform 2D graphics library: | |
66 https://www.cairographics.org/ | |
67 | |
68 * Optionally, SDL, a cross-platform multimedia library: | |
69 https://www.libsdl.org/ | |
70 | |
71 On Ubuntu, you would use: | |
72 | |
73 $ sudo apt-get install -y libcairo-dev libpixman-1-dev libsdl2-dev | |
74 | |
75 * Optionally, Emscripten, the official compiler for WebAssembly: | |
76 https://emscripten.org/ | |
77 | |
78 | |
79 Installation and usage | |
80 ---------------------- | |
81 | |
82 Build instructions and usage details are available as part of the | |
83 Orthanc Book: | |
84 http://book.orthanc-server.com/developers/stone.html | |
85 | |
86 Stone of Orthanc comes with several sample applications in the | |
87 "Applications/Samples" folder. Please check the | |
88 "Applications/Samples/README.md" file for information on the samples | |
89 building and running procedure. | |
90 | |
91 The source code of the Stone Web viewer is located in folder | |
92 "Applications/StoneWebViewer". | |
93 | |
94 | |
95 Technical information | |
96 --------------------- | |
97 | |
98 - For situations where OpenGL is not available, Stone of Orthanc comes | |
99 bundled with its own software-based rendering engine (based upon | |
100 cairo and pixman). This engine will use CPU hardware acceleration if | |
101 available (notably SSE2, SSSE3, and NEON instruction sets), but not | |
102 the GPU. This makes Stone a highly versatile framework that can run | |
103 even on low-performance platforms. | |
104 | |
105 - Stone of Orthanc is compatible with desktop software, with native | |
106 mobile apps and with Web applications. To achieve this | |
107 compatibility, the rendering loop of Stone of Orthanc is | |
108 single-threaded, and abstracts network transfers and other | |
109 asynchronous events thanks to a so-called "Oracle". The Oracle is | |
110 the place where architecture-specific operations/computations can | |
111 take place (for instance, multi-threading). | |
112 | |
113 | |
114 Licensing | |
115 --------- | |
116 | |
117 Stone of Orthanc is licensed under the AGPLv3+ license. | |
118 | |
119 We also kindly ask scientific works and clinical studies that make use | |
120 of Orthanc to cite Orthanc in their associated publications. | |
121 Similarly, we ask open-source and closed-source products that make use | |
122 of Orthanc to warn us about this use. You can cite our work using the | |
123 following BibTeX entry: | |
124 | |
125 @Article{Jodogne2018, | |
126 author="Jodogne, S{\'e}bastien", | |
127 title="The {O}rthanc Ecosystem for Medical Imaging", | |
128 journal="Journal of Digital Imaging", | |
129 year="2018", | |
130 month="Jun", | |
131 day="01", | |
132 volume="31", | |
133 number="3", | |
134 pages="341--352", | |
135 issn="1618-727X", | |
136 doi="10.1007/s10278-018-0082-y", | |
137 url="https://doi.org/10.1007/s10278-018-0082-y" | |
138 } | |
139 |