diff Sphinx/source/plugins/python/create-dicom.py @ 704:ba2403ebd4b7

moving python samples in separate files (3)
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 11 Jun 2021 10:24:08 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Sphinx/source/plugins/python/create-dicom.py	Fri Jun 11 10:24:08 2021 +0200
@@ -0,0 +1,24 @@
+import json
+import orthanc
+
+def OnChange(changeType, level, resource):
+    if changeType == orthanc.ChangeType.ORTHANC_STARTED:
+        tags = {
+            'SOPClassUID' : '1.2.840.10008.5.1.4.1.1.1',
+            'PatientID' : 'HELLO',
+            'PatientName' : 'WORLD',
+        }
+
+        with open('Lena.png', 'rb') as f:
+            img = orthanc.UncompressImage(f.read(), orthanc.ImageFormat.PNG)
+
+        s = orthanc.CreateDicom(json.dumps(tags), img, orthanc.CreateDicomFlags.GENERATE_IDENTIFIERS)
+
+        with open('/tmp/sample.dcm', 'wb') as f:
+            f.write(s)
+
+        dicom = orthanc.CreateDicomInstance(s)
+        frame = dicom.GetInstanceDecodedFrame(0)
+        print('Size of the frame: %dx%d' % (frame.GetImageWidth(), frame.GetImageHeight()))
+
+orthanc.RegisterOnChangeCallback(OnChange)