Mercurial > hg > orthanc-book
view Sphinx/source/plugins/ohif.rst @ 952:4a76327e83fb
started documentation of ohif plugin
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 19 Jun 2023 07:05:38 +0200 |
parents | |
children | 2038eb1f55bb |
line wrap: on
line source
.. _ohif: OHIF plugin =========== .. contents:: This **official** plugin by the `ICTEAM institute of UCLouvain <https://uclouvain.be/en/research-institutes/icteam>`__ extends Orthanc with the `OHIF <https://ohif.org/>`__ extensible Web imaging platform. Usage ----- This plugin adds a dedicated button to Orthanc Explorer, which provides an easy, fast access to the OHIF viewers (click on the image to view a demo video): .. image:: ../images/OHIF.png :align: center :width: 800 :target: https://www.youtube.com/watch?v=-lzddzq9iT4 | The plugin greatly simplifies the deployment of OHIF, as it does not necessitate the setup of any reverse proxy. Compilation ----------- .. highlight:: bash Official releases can be `downloaded from the Orthanc homepage <https://www.orthanc-server.com/browse.php?path=/plugin-ohif>`__. As an alternative, the `repository containing the source code <https://orthanc.uclouvain.be/hg/orthanc-ohif/>`__ can be accessed using Mercurial. The procedure to compile this plugin is similar of that for the :ref:`core of Orthanc <binaries>`. The following commands should work on most GNU/Linux distributions, provided Docker is installed:: $ mkdir Build $ cd Build $ ../Resources/CreateOHIFDist.sh $ cmake .. -DSTATIC_BUILD=ON -DCMAKE_BUILD_TYPE=Release $ make The compilation will produce a shared library ``libOrthancOHIF.so`` that contains the OHIF plugin for Orthanc. Pre-compiled Linux Standard Base (LSB) binaries `are available for download <https://lsb.orthanc-server.com/plugin-ohif/>`__. Pre-compiled binaries for Microsoft Windows and macOS `are also available <https://www.orthanc-server.com/browse.php?path=/plugin-ohif>`__. Furthermore, the :ref:`Docker images <docker>` ``jodogne/orthanc-plugins`` and ``osimis/orthanc`` also contain the plugin. Debian and Ubuntu packages can be found in the :ref:`standalone repository <binaries>` ``https://debian.orthanc-labs.com/``. Configuration ------------- .. highlight:: json Here is a minimal sample :ref:`configuration file <configuration>` to use this plugin:: { "Plugins" : [ "/home/user/orthanc-ohif/Build/libOHIF.so" ] } Orthanc must of course be restarted after the modification of its configuration file. Using DICOMweb ^^^^^^^^^^^^^^ By default, the plugin uses the `DICOM JSON data source <https://v3-docs.ohif.org/configuration/datasources/dicom-json/>`__ of OHIF. This data source is optimized to provide the fastest access to the DICOM images, while requiring no additional plugin. However, in order to deliver fast access, the OHIF plugin will cache additional information about each DICOM instance in the Orthanc database, which results in a larger size of the Orthanc database (an additional 1KB is roughly needed per instance). It is also possible to enable the `DICOMweb data source <https://v3-docs.ohif.org/configuration/dataSources/dicom-web>`__. In this case, the :ref:`DICOMweb plugin of Orthanc <dicomweb>` must also be loaded. It can also be useful to load the :ref:`GDCM plugin <gdcm>` if the images use a compressed transfer syntax. The advantages of using DICOMweb over the default DICOM JSON are: * More standard-compliant. * The OHIF study list is accessible, notably as a button on the welcome screen of Orthanc Explorer. * No additional space is used in the Orthanc database. Here is a minimal configuration file to use DICOMweb:: { "Plugins" : [ "/home/user/orthanc-ohif/Build/libOHIF.so", "/home/user/orthanc-dicomweb/Build/libOHIF.so" ], "OHIF" : { "DataSource" : "dicom-web" } } Router basename ^^^^^^^^^^^^^^^ If Orthanc is not branched at the root of a Web server thanks of the presence of a reverse proxy, the configuration option ``RouterBasename`` must be adapted. For instance, if Orthanc is running at address ``https://host.com/imaging/demo/orthanc/``, the following configuration file must be used for OHIF to work:: { "Plugins" : [ "/home/user/orthanc-ohif/Build/libOHIF.so" ], "OHIF" : { "RouterBasename" : "/imaging/demo/orthanc/ohif/" } } The default value of ``RouterBasename`` is ``/ohif/``. Preloading ^^^^^^^^^^