Mercurial > hg > orthanc-book
annotate Sphinx/source/users/code/image-dicomization.py @ 1112:ad26102adccc default tip
fix broken link
author | Alain Mazy <am@orthanc.team> |
---|---|
date | Wed, 23 Oct 2024 16:52:30 +0200 |
parents | 2d83e9ce6bf0 |
children |
rev | line source |
---|---|
1059
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
1 import base64 |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
2 import json |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
3 import requests |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
4 |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
5 with open('sample.png', 'rb') as f: |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
6 content = f.read() |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
7 |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
8 pixelData = base64.b64encode(content).decode('ascii') |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
9 |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
10 r = requests.post('http://localhost:8042/tools/create-dicom', |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
11 json.dumps({ |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
12 'Content' : 'data:image/png;base64,%s' % pixelData, |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
13 'Tags' : { |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
14 'PatientName' : 'TEST', |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
15 'StudyDescription' : 'MY^STUDY', |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
16 } |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
17 }), |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
18 auth = requests.auth.HTTPBasicAuth('orthanc', 'orthanc')) |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
19 r.raise_for_status() |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
20 |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
21 instanceId = r.json() ['ID'] |
2d83e9ce6bf0
added DICOM-ization of an image
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
22 print('ID of the newly created DICOM instance: %s' % instanceId) |