DICOM Config.

554 views
Skip to first unread message

commis...@gmail.com

unread,
Sep 23, 2016, 11:50:14 AM9/23/16
to OpenREM
Greetings All,

Just got this setup. Things are looking good. Really cool software and a breeze to get installed.

I am confused about one thing though. I didn't see any place to configure it's local port, AET, and IP. I am in the DICOM network Config section and I set up my Orthanc info and it can query fine. However, I can't receive anything. I'm getting association errors on that side due to an Illegal association. I went to plop in the REM info and realized, All I really know is the IP. Perhaps I missed the section in the install where that was configured?

Any assistance is greatly appreciated!

Ed McDonagh

unread,
Sep 23, 2016, 12:47:33 PM9/23/16
to commis...@gmail.com, OpenREM

Hello

Very glad to hear your setup experience was good!

For production use, we recommend using a third party DICOM store node for now, along with some scripts to pass the objects to OpenREM. For example see http://docs.openrem.org/en/latest/conquestUbuntu.html for Ubuntu with Conquest, and http://docs.openrem.org/en/latest/conquestAsWindowsService.html for similar instructions for Windows and Conquest, though they need revising I think.

However, for testing, or of you just want to see how you get on with the inbuilt DICOM store facility, the docs at http://docs.openrem.org/en/latest/netdicom-nodes.html and in particular this section http://docs.openrem.org/en/latest/netdicom-nodes.html#native-dicom-store-node-with-direct-import should get you started. You can set the AET and port however you want, then select to have OpenREM control the service in the expert section.

I hope this helps. Let us know how you get on!

Kind regards

Ed

commis...@gmail.com

unread,
Sep 23, 2016, 12:50:42 PM9/23/16
to OpenREM, commis...@gmail.com
Hey Ed,

Thanks for the info. I forgot to mention I'm on Windows, I assume the same goes for that platform too?

Ed McDonagh

unread,
Sep 23, 2016, 12:53:50 PM9/23/16
to commis...@gmail.com, OpenREM

On 23 Sep 2016 5:50 p.m.,

>
> Hey Ed,
>
> Thanks for the info. I forgot to mention I'm on Windows, I assume the same goes for that platform too?
>

It should work just the same. You might need to be wary of the Windows firewall though.

commis...@gmail.com

unread,
Sep 23, 2016, 1:58:54 PM9/23/16
to OpenREM, commis...@gmail.com
I am getting this error from Conquest. Have you ever seen it: No acceptable presentation context for modality

commis...@gmail.com

unread,
Sep 23, 2016, 2:10:33 PM9/23/16
to OpenREM, commis...@gmail.com
I think I figured it out. Conquest didn't have the
XRayRadiationDoseSR in its config.

Ed McDonagh

unread,
Sep 23, 2016, 2:12:26 PM9/23/16
to commis...@gmail.com, OpenREM

That's what I was going to suggest!

commis...@gmail.com

unread,
Sep 23, 2016, 3:05:16 PM9/23/16
to OpenREM, commis...@gmail.com
On Friday, September 23, 2016 at 2:12:26 PM UTC-4, Ed McDonagh wrote:
> That's what I was going to suggest!

Hey Ed,

Thanks again for your help.

I might need it again. So I set up my Orthanc server to forward to ConQuest. I was going to have OpenREM query Conquest for the SR data. I popped in the Conquest data in the Q/R field. But I consistently get a Query not yet started message. I don't have a single thing in the logs other than the association messages.

Oddly, its 3pm now and the last item the log last was from 12pm. So it doesn't appear to be updating.

*scratching my head.* I am missing some part of this.

commis...@gmail.com

unread,
Sep 23, 2016, 3:09:32 PM9/23/16
to OpenREM, commis...@gmail.com
Got it! It was Celery! I hate celery in real life... HA!!

Ed McDonagh

unread,
Sep 23, 2016, 3:10:00 PM9/23/16
to commis...@gmail.com, OpenREM

Have you got celery working?

However, the QR function relies on a local store SCP, which will either be a 3rd party one (conquest) which would then call python openrem_rdsr.py filename.dcm, or the inbuilt one.

So having OpenREM QR a local conquest doesn't really make sense...


--
You received this message because you are subscribed to the Google Groups "OpenREM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openrem+unsubscribe@googlegroups.com.
To post to this group, send an email to ope...@googlegroups.com.
Visit this group at https://groups.google.com/group/openrem.
For more options, visit https://groups.google.com/d/optout.

commis...@gmail.com

unread,
Sep 23, 2016, 3:18:36 PM9/23/16
to OpenREM, commis...@gmail.com
On Friday, September 23, 2016 at 3:10:00 PM UTC-4, Ed McDonagh wrote:
> Have you got celery working?
>
> However, the QR function relies on a local store SCP, which will either be a 3rd party one (conquest) which would then call python openrem_rdsr.py filename.dcm, or the inbuilt one.
>
> So having OpenREM QR a local conquest doesn't really make sense...
>
>
>
> On 23 Sep 2016 8:05 p.m., <commis...@gmail.com> wrote:
> On Friday, September 23, 2016 at 2:12:26 PM UTC-4, Ed McDonagh wrote:
>
> > That's what I was going to suggest!
>
>
>
> Hey Ed,
>
>
>
> Thanks again for your help.
>
>
>
> I might need it again. So I set up my Orthanc server to forward to ConQuest. I was going to have OpenREM query Conquest for the SR data. I popped in the Conquest data in the Q/R field. But I consistently get a Query not yet started message. I don't have a single thing in the logs other than the association messages.
>
>
>
> Oddly, its 3pm now and the last item the log last was from 12pm. So it doesn't appear to be updating.
>
>
>
> *scratching my head.* I am missing some part of this.
>
>
>
> --
>
> You received this message because you are subscribed to the Google Groups "OpenREM" group.
>
> To unsubscribe from this group and stop receiving emails from it, send an email to openrem+u...@googlegroups.com.
>
> To post to this group, send an email to ope...@googlegroups.com.
>
> Visit this group at https://groups.google.com/group/openrem.
>
> For more options, visit https://groups.google.com/d/optout.

Ok. I did get celery working. And it was able to find some exams. But it didn't display on the home page.

I guess that's where my confusion is then. If I'm not querying Conquest. How would the exams come into REM?

If I am understanding you correctly, I am correct in having Conquest as the only Store location. But then, I'd have to config Conquest to communicate with the python script you mentioned above. I might have to do some reading on that part there I think this is part I am misunderstanding.

Regarding the inbuilt one where would I see that info?


Ed McDonagh

unread,
Sep 23, 2016, 3:59:42 PM9/23/16
to OpenREM, commis...@gmail.com
So these are your choices:

1 - self contained in OpenREM, but not yet productions stable:

Workflow is then:

  1. Modality sends RDSR, mammo image, DX image, Philips CT summary page image to OpenREM Store node
  2. OpenREM works out what it is, and extracts the data into the database
Or 
  1. Use the OpenREM interface to QR a PACS or similar
  2. PACS sends the data to the store and it is processed as above 

Or 2 - Use conquest and scripts - tried and tested:
Does anyone have an example to share?

Workflow is then:
  1. Modality sends RDSR, mammo image, DX image, Philips CT summary page image to Conquest store node
  2. Conquest calls the batch file appropriate to that file type with the DICOM object as a parameter
  3. The batch file a calls an OpenREM import script
  4. OpenREM extracts the data into the database
Or 
  1. Use the OpenREM interface to QR a PACS or similar
  2. Conquest is set as the local store node in OpenREM interface (without ticking the advanced box)
  3. PACS then sends the data to Conquest
  4. Process continues as above 
 
 

Ed McDonagh

unread,
Sep 23, 2016, 4:02:37 PM9/23/16
to OpenREM, commis...@gmail.com
Or 2 - Use conquest and scripts - tried and tested:
Sorry, the bash script example link was supposed to be http://docs.openrem.org/en/0.7.3/conquestUbuntu.html#bash-scripts 

commis...@gmail.com

unread,
Sep 23, 2016, 4:07:47 PM9/23/16
to OpenREM, commis...@gmail.com
On Friday, September 23, 2016 at 3:59:42 PM UTC-4, Ed McDonagh wrote:
> So these are your choices:
>
>
> 1 - self contained in OpenREM, but not yet productions stable:
>
> Configure a local store node: http://docs.openrem.org/en/0.7.3/netdicom-nodes.html#configuring-dicom-store-nodes-in-openrem, then go into the Advanced section and tick the first box to control the server:
>
>
>
>
> Workflow is then:Modality sends RDSR, mammo image, DX image, Philips CT summary page image to OpenREM Store nodeOpenREM works out what it is, and extracts the data into the database
> Or Use the OpenREM interface to QR a PACS or similarPACS sends the data to the store and it is processed as above 
>
>
> Or 2 - Use conquest and scripts - tried and tested:
> Set up Conquest on the same server as OpenREMEdit the dicom.ini file to pass the incoming files to a script if they are the right kind of object: http://docs.openrem.org/en/0.7.3/conquestImportConfig.htmlCreate the scripts. The bash script examples are at http://docs.openrem.org/en/0.7.3/conquestImportConfig.html - I don't have any Windows batch file examples, but I think it would look something like python openrem_rdsr.py %1Does anyone have an example to share?
>
>
> Workflow is then:Modality sends RDSR, mammo image, DX image, Philips CT summary page image to Conquest store nodeConquest calls the batch file appropriate to that file type with the DICOM object as a parameterThe batch file a calls an OpenREM import scriptOpenREM extracts the data into the database
> Or Use the OpenREM interface to QR a PACS or similarConquest is set as the local store node in OpenREM interface (without ticking the advanced box) PACS then sends the data to ConquestProcess continues as above 
>
>  
>  

Ed,
I really appreciate your patience and time to help me! Thanks for this. I think I am getting bogged down by the scripting part. It's not number 1 in my wheelhouse. I am going to take a look at what you suggested.

I'll keep you posted.

David Platten

unread,
Sep 26, 2016, 7:38:57 AM9/26/16
to OpenREM, commis...@gmail.com
Hi,

I was working with an OpenREM Windows install at my previous job. I've attached a pdf file that you may find useful: it includes the batch files that Conquest was using to import data into OpenREM, and also some configuration files. I've removed some IP addresses, host names and passwords from the document.

Regards,

David
I0003 Description of the OpenREM patient dose monitoring system v0.3a.pdf

Brian Commissiong

unread,
Sep 26, 2016, 7:46:17 AM9/26/16
to David Platten, OpenREM
Thanks a lot.  Much appreciated.

kari.s....@gmail.com

unread,
Feb 27, 2017, 4:38:11 AM2/27/17
to OpenREM, dpla...@gmail.com, commis...@gmail.com
Hi!
We are experiencing similar problems as mentioned above about using Conquest to import data to OpenREM.
We have been running OpenREM for a while now without using Conquest, but suddenly the server have become unstable. So we just installed Conquest and it runs ok, and the RDSR's appear in the data folder. The issue is that they don't appear in the OpenREM browser.
Based on the pdf-file from David Platten concerning the batch file, we have used following command in the dicom.ini file:
ImportConverter = ifequal "%V0008,0016","1.2.840.10008.5.1.4.1.1.88.67"; {save to C:\conquestdicomserver\data\sr\%o.dcm; system C:\Python27\python.exe C:\Python27\scripts\openrem_rdsr.py %1 del %1 "C:\conquestdicomserver\data\sr\%o.dcm"; destroy}

Is there anything missing in our command for importing the data to OpenREM? Should there be made any other changes in the code as well?
We would appreciate help.

Kindly regards,

Kari og Linn

David Platten

unread,
Feb 28, 2017, 5:52:43 AM2/28/17
to OpenREM, dpla...@gmail.com, commis...@gmail.com, kari.s....@gmail.com
Dear Kari,

You are nearly there. You need to use a separate batch file. First, the import converter line in your Conquest dicom.ini file should be:

ImportConverter  = ifequal "%V0008,0016","1.2.840.10008.5.1.4.1.1.88.67"; {save to C:\conquestdicomserver\data\sr\%o.dcm; system C:\folder\openrem-sr-import.bat "C:\conquestdicomserver\data\sr\%o.dcm"; destroy}

This will make Conquest do three things with each DICOM object that is sent to it with "1.2.840.10008.5.1.4.1.1.88.67" in tag (0008,0016):
  • Save a copy of the DICOM object to the C:\conquestdicomserver\data\sr\ folder, with a filename equal to the object's SOP instance UID
  • Run a batch file, with the name and path of the saved DICOM object as an argument: C:\folder\openrem-sr-import.bat "C:\conquestdicomserver\data\sr\%0.dcm"
  • Delete it's locally stored copy of the DICOM object
You must change the "C:\folder\openrem-sr-import.bat" text so that it reflects the location and name of the batch file that you're using.

You need to create the batch file that is used in the second step above that has the following contents:
C:\python27\python.exe C:\python27\scripts\openrem_rdsr.py %1
del %1

This does two things:
  • Runs the openrem_rdsr.py script on the saved copy of the DICOM object
  • Deletes the saved copy of the DICOM object
You must change the "C:\python27\..." bits in my batch file example so that it reflects where python is installed on your server.

I hope that helps.

Regards,

David

kari.s....@gmail.com

unread,
Mar 8, 2017, 9:37:16 AM3/8/17
to OpenREM, dpla...@gmail.com, commis...@gmail.com, kari.s....@gmail.com
Dear David

Thank you so much for your answer. We have created the batch file and changed the dicom.ini file as you described. The SR objects appear in the data folder, but they still don`t appear in the OpenREM browser.

We recognize from your pdf file attached above that your dicom.ini contains much more information than ours. Do we miss anything? See copy below.

# This file contains configuration information for the DICOM server
# Do not edit unless you know what you are doing

[sscscp]
MicroPACS = sscscp

# Network configuration: server name and TCP/IP port#
MyACRNema = STOREOPENREM
TCPPort = 8104

# Host, database, username and password for database
SQLHost = localhost
SQLServer = C:\conquestdicomserver\Data\dbase\conquest.db3
Username =
Password =
SqLite = 1
DoubleBackSlashToDB = 0
UseEscapeStringConstants = 0

# Configure server
ImportExportDragAndDrop = 1
ZipTime = 05:
UIDPrefix = 1.2.826.0.1.3680043.2.135.736396.50305391
EnableComputedFields = 1

FileNameSyntax = 4

# Configuration of compression for incoming images and archival
DroppedFileCompression = un
IncomingCompression = un
ArchiveCompression = as

# For debug information
PACSName = STOREOPENREM
OperatorConsole = 127.0.0.1
DebugLevel = 0

# Configuration of disk(s) to store images
MAGDeviceFullThreshHold = 30
MAGDevices = 1
MAGDevice0 = c:\conquestdicomserver\data\

# Import converter for structured dose reports for import into OpenREM
ImportConverter = ifequal "%V0008,0016","1.2.840.10008.5.1.4.1.1.88.67"; {save to C:\conquestdicomserver\data\sr\%o.dcm; system C:\conquestdicomserver\openrem-sr-import.bat "C:\conquestdicomserver\data\sr\%o.dcm"; destroy}




To avoid configuring the node at all our modalities we defined the AE title and port in Conquest to be the same as in OpenREM. Will this cause any issues?

Is it recommended to use the PostGreSQL, or is it fine to just use the default
SQlite?

One last question. From Our GE CT scanners the DICOM tag containing the Aquisition protocol name is missing. We see from your pdf that you use the Enhanced SR instead of the Radiation Dose SR. Will this make any difference?

Kindly regards,
Kari and Linn

Ed McDonagh

unread,
Mar 8, 2017, 10:57:47 AM3/8/17
to OpenREM, dpla...@gmail.com, kari.s....@gmail.com
I can answer some of the questions there Kari and Linn

You don't need to use PostgreSQL for conquest - in fact you don't need a database at all! I use the following:
# Host for postgres or mysql only, name, username and password for database
SQLHost                  = 
SQLServer                = 
Username                 = 
Password                 = 
PostGres                 = 0
MySQL                    = 0
SQLite                   = 0

The conquest server then runs with a 'null' database, which is fine for our purposes.

Using the same AET and port is very sensible, as long as you don't try to run the OpenREM Store that you previously were running at the same time!

There is an import argument for the GE scanners using ESR because most GE scanners are configured to produce Enhanced SR objects rather than Radiation Dose SR objects. The contents are the same, it is just the object type that changes.

In terms of the acquisition protocol name, unfortunately this is a feature of the GE dose reports. There is a possibility of creating better dose reports using other tools, but this is not currently within the scope of OpenREM.

Your main issue however seems to be that your batch file isn't doing the job. Can you post the content of that?

Ed

kari.s....@gmail.com

unread,
Mar 9, 2017, 2:55:43 AM3/9/17
to OpenREM, dpla...@gmail.com, kari.s....@gmail.com
Thanks Ed.

We only wrote the following creating our batch file:
C:\python27\python.exe C:\python27\scripts\openrem_rdsr.py %1
del %1
Should it contain anything more?


When I open it now it opens as a command window containing
C:\conquestdicomserver>C:\python27\python.exe C:\python27\scripts\openrem_rdsr.py
It closes antomatic after 1-2 seconds.

Kari


Ed McDonagh

unread,
Mar 9, 2017, 4:12:01 AM3/9/17
to kari.s....@gmail.com, David Platten, OpenREM
What happens if you open a command window, and run

C:\conquestdicomserver\openrem-sr-import.bat  path\to\sr\file.dcm

?

--
You received this message because you are subscribed to the Google Groups "OpenREM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openrem+unsubscribe@googlegroups.com.

kari.s....@gmail.com

unread,
Mar 9, 2017, 5:03:26 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
Since the sr folder is empty I copied a SR object from a Siemens CT from the data folder. When I run the command you refer to, the file disappear from the sr file and it is imported to OpenREM! See copy from command window below.

C:\>conquestdicomserver\openrem-sr-import.bat C:\conquestdicomserver\data\sr\1.3
.12.2.1107.5.1.4.73194.30000017030906295766700000293_0502_000001_14890526250087.
dcm

C:\>C:\python27\python.exe C:\python27\scripts\openrem_rdsr.py C:\conquestdicoms
erver\data\sr\1.3.12.2.1107.5.1.4.73194.30000017030906295766700000293_0502_00000
1_14890526250087.dcm

C:\>del C:\conquestdicomserver\data\sr\1.3.12.2.1107.5.1.4.73194.300000170309062
95766700000293_0502_000001_14890526250087.dcm

C:\>

Ed McDonagh

unread,
Mar 9, 2017, 5:53:47 AM3/9/17
to kari.s....@gmail.com, David Platten, OpenREM
Well it's good that that worked, but I don't know why it didn't work when conquest does the same thing!

You said that conquest copies the incoming SR to the right folder, but the script doesn't run?

David - do you have any ideas? Could there be any permissions element where Kari can execute the script but the user conquest is running as can't?

kari.s....@gmail.com

unread,
Mar 9, 2017, 6:12:43 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
All the SR objects appear the data folder (in separate folders for each examination, named with patient ID). But a copy is not saved to the sr folder.

Ed McDonagh

unread,
Mar 9, 2017, 6:19:21 AM3/9/17
to kari.s....@gmail.com, David Platten, OpenREM
That would indicate the ImportConverter is being ignored.

Try adding a 0, changing it to ImportConverter0

On 9 Mar 2017 11:12, <kari.s....@gmail.com> wrote:
All the SR objects appear the data folder (in separate folders for each examination, named with patient ID). But a copy is not saved to the sr folder.

David Platten

unread,
Mar 9, 2017, 6:19:39 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
Dear Kari,

You said that when you use Conquest that the DICOM files appear in the data folder. Do you mean C:\conquestdicomserver\data\sr\ ?

It could be a permissions issue. I run Conquest either as an administrator, or as a service using the computer's system account.

Regards,

David


On Thursday, 9 March 2017 10:53:47 UTC, Ed McDonagh wrote:
Well it's good that that worked, but I don't know why it didn't work when conquest does the same thing!

You said that conquest copies the incoming SR to the right folder, but the script doesn't run?

David - do you have any ideas? Could there be any permissions element where Kari can execute the script but the user conquest is running as can't?
On 9 Mar 2017 10:03, <kari.s....@gmail.com> wrote:
Since the sr folder is empty I copied a SR object from a Siemens CT from the data folder. When I run the command you refer to, the file disappear from the sr file and it is imported to OpenREM! See copy from command window below.

C:\>conquestdicomserver\openrem-sr-import.bat C:\conquestdicomserver\data\sr\1.3
.12.2.1107.5.1.4.73194.30000017030906295766700000293_0502_000001_14890526250087.
dcm

C:\>C:\python27\python.exe C:\python27\scripts\openrem_rdsr.py C:\conquestdicoms
erver\data\sr\1.3.12.2.1107.5.1.4.73194.30000017030906295766700000293_0502_00000
1_14890526250087.dcm

C:\>del C:\conquestdicomserver\data\sr\1.3.12.2.1107.5.1.4.73194.300000170309062
95766700000293_0502_000001_14890526250087.dcm

C:\>

--
You received this message because you are subscribed to the Google Groups "OpenREM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openrem+u...@googlegroups.com.

David Platten

unread,
Mar 9, 2017, 6:22:06 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
OK. That means that your Conquest rule isn't being run.

Can you look at the tags of one of your dose reports? Does tag (0008,0016) have the value "1.2.840.10008.5.1.4.1.1.88.67"? Your Conquest rule will only run if this is the case.

Regards,

David

David Platten

unread,
Mar 9, 2017, 6:40:41 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
Good spot, Ed.

Kari, don't forget that you need to re-start Conquest after making any changes to dicom.ini, otherwise they won't take affect.

Regards,

David


On Thursday, 9 March 2017 11:19:21 UTC, Ed McDonagh wrote:
That would indicate the ImportConverter is being ignored.

Try adding a 0, changing it to ImportConverter0
On 9 Mar 2017 11:12, <kari.s....@gmail.com> wrote:
All the SR objects appear the data folder (in separate folders for each examination, named with patient ID). But a copy is not saved to the sr folder.

--
You received this message because you are subscribed to the Google Groups "OpenREM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openrem+u...@googlegroups.com.

kari.s....@gmail.com

unread,
Mar 9, 2017, 7:28:30 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
Changing it to ImportConverter0 made it work! Thanks so much to both of you for really good help :)

Best regards,
Kari

David Platten

unread,
Mar 9, 2017, 8:07:47 AM3/9/17
to OpenREM, kari.s....@gmail.com, dpla...@gmail.com
Brilliant - glad it's working now.

David
Reply all
Reply to author
Forward
0 new messages