Dicom Tag Edit

  • We have a US cart that fills the "PatientSize (0010,1020) Size of the Patient" tag in the format of centimeters. However our Cardiology PACS expects to see a value in that tag that is meters and uses that to figure out the BSA...>So as you can imagine, we are getting BSA's around the size of an elephant. Of course neither the PACS nor the vendor for the US cart seem to be able to figure this out. Can the imageconverter in conquest be configured to move the decimal point over 2 digits and forward?

  • Sure,


    something like (untested):


    [lua]
    ImportConverter0 = if Association.Caller == 'USCART' then Data.PatientSize = Data.PatientSize / 100 end


    You can put a conquest between the US and the PACS and let it modify and forward everything it receives, e.g., (example would not store anything)


    [lua]
    ImportConverter0 = if Association.Caller == 'USCART' then Data.PatientSize = Data.PatientSize / 100 end; script('forward to PACS; destroy')


    regards,


    Marcel

  • Thanks...will this work together with my dicom 6000 converter??



    [lua]
    ImportConverter1 = if Association.Caller == HURON then Data.PatientSize = Data.PatientSize / 100 end


    [lua]
    ImportConverter0 = Data["6000,0040"]=nil; Data["6000,0100"]=nil; Data["6000,1500"]=nil; Data["6000,0010"]=nil; Data["6000,0011"]=nil; Data["6000,0050"]=nil; Data["6000,0022"]=nil; Data["6000,0102"]=nil; Data["6000,3000"]=nil; Data["6000,0011"]=nil

  • Ok.. Thanks. This is working. Thanks. ONe thing...it is very slow... The US Cart sends into PACS in about 5 minutes...but sending to Conquest takes about 20 minutes. Do you see any reason it is taking long. I am using the text that forwards and destroys. It is doing this an image at a time and then destroying an image at a time. Do you think they would come in faster if it were forwarding on the exam instead?

  • enabling JPEG support did help alittle, but seemed to make the images huge and difficult to work with. If I were to use the
    [lua]
    ImportConverter0 = if Association.Caller == 'USCART' then Data.PatientSize = Data.PatientSize / 100 end


    and change the incoming ACRNEMA to store as UJ and then put in a Exportconverter to export as J6, would that considerably speed things up. Images are coming from the cart at "High Lossy."


    These are multiframe US Echo images and I want to keep them small as I can.

  • Hi,


    you want to avoid decompressing and recompressing them, that is what uj is for: it will keep any jpeg as is.
    i.e., try


    IncomingCompression = uj
    ImportConverter0 = if Association.Caller == 'USCART' then Data.PatientSize = Data.PatientSize / 100 end; script('forward compressed as uj to PACS; destroy')


    I am not sure this works though.


    Marcel

  • OK..I will give it a try after this next echo. By the way, after putting in the importcoverter, I get errors on anything else that I send into conquest. See below. Not sure why it is even trying to convert because the incoming images are not from USMINDRAY1.
    UPACS THREAD 3: STARTED AT: Fri Feb 12 11:24:59 2016
    [CONQUESTPACS] Calling Application Title : "HURON "
    [CONQUESTPACS] Called Application Title : "CONQUESTPACS "
    [CONQUESTPACS] Application Context : "1.2.840.10008.3.1.1.1", PDU length: 16384
    [CONQUESTPACS] Presentation Context 0 "1.2.840.10008.5.1.4.1.1.7" 1
    [CONQUESTPACS] *** lua run error [string "if Association.Caller == USMINDRAY1 then Da..."]:1: attempt to perform arithmetic on field 'PatientSize' (a nil value) in 'if Association.Caller == USMINDRAY1 then Data.PatientSize = Data.PatientSize / 100 end'
    [CONQUESTPACS] Rewritten file: o:\conquestdatabase\data2\073\1.2.826.0.1.3680043.2.1208.2484848484954457191602016212103350790_0999_000002_14552978770000.dcm
    [CONQUESTPACS] *** lua run error [string "if Association.Caller == USMINDRAY1 then Da..."]:1: attempt to perform arithmetic on field 'PatientSize' (a nil value) in 'if Association.Caller == USMINDRAY1 then Data.PatientSize = Data.PatientSize / 100 end'
    [CONQUESTPACS] Rewritten file: o:\conquestdatabase\data2\073\1.2.826.0.1.3680043.2.1208.2484848484954457191602016212103350790_0999_000004_14552978770001.dcm
    [CONQUESTPACS] *** lua run error [string "if Association.Caller == USMINDRAY1 then Da..."]:1: attempt to perform arithmetic on field 'PatientSize' (a nil value) in 'if Association.Caller == USMINDRAY1 then Data.PatientSize = Data.PatientSize / 100 end'
    [CONQUESTPACS] Rewr
    itten file: o:\conquestdatabase\data2\0732\1.2.826.0.1.3680043.2.1208.2484848484954457191602016212103350790_0999_000001_14552978770002.dcm
    [CONQUESTPACS] *** lua run error [string "if Association.Caller == USMINDRAY1 then Da..."]:1: attempt to perform arithmetic on field 'PatientSize' (a nil value) in 'if Association.Caller == USMINDRAY1 then Data.PatientSize = Data.PatientSize / 100 end'
    [CONQUESTPACS] Rewritten file: o:\conquestdatabase\data2\073\1.2.826.0.1.3680043.2.1208.2484848484954457191602016212103350790_0999_000003_14552978770003.dcm
    [CONQUESTPACS] UPACS THREAD 3: ENDED AT: Fri Feb 12 11:24:59 2016
    [CONQUESTPACS] UPACS THREAD 3: TOTAL RUNNING TIME: 0 SECONDS

  • This change (in bold) should solve it


    if Association.Caller == 'USCART' and Data.PatientSize then Data.PatientSize = Data.PatientSize / 100 end; script('forward compressed as uj to PACS; destroy')


    Marcel

  • It got rid of the error, but still forwarded the images.


    Here is setting
    [lua]
    ImportConverter1 = if Association.Caller == USMINDRAY1 and Data.PatientSize then Data.PatientSize = Data.PatientSize / 100 end; script('forward compressed as uj to GEPACS; destroy')


    [CONQUESTPACS] UPACS THREAD 5: STARTED AT: Fri Feb 12 12:32:53 2016
    [CONQUESTPACS] Calling Application Title : "HURON "
    [CONQUESTPACS] Called Application Title : "CONQUESTPACS "
    [CONQUESTPACS] Application Context : "1.2.840.10008.3.1.1.1", PDU length: 16384
    [CONQUESTPACS] Presentation Context 0 "1.2.840.10008.5.1.4.1.1.7" 1
    [CONQUESTPACS] ImportConverter19.0: forwarded object to GEPACS
    [CONQUESTPACS] Importconverter19.1: destroyed received image
    [CONQUESTPACS] ImportConverter19.0: forwarded object to GEPACS
    [CONQUESTPACS] Importconverter19.1: destroyed received image
    [CONQUESTPACS] ImportConverter19.0: forwarded object to GEPACS
    [CONQUESTPACS] Importconverter19.1: destroyed received image
    [CONQUESTPACS] ImportConverter19.0: forwarded object to GEPACS
    [CONQUESTPACS] Importconverter19.1: destroyed received image
    [CONQUESTPACS] ImportConverter19.0: forwarded object to GEPACS
    [CONQUESTPACS] Importconverter19.1: destroyed received image
    [CONQUESTPACS] UPACS THREAD 5: ENDED AT: Fri Feb 12 12:32:56 2016
    [CONQUESTPACS] UPACS THREAD 5: TOTAL RUNNING TIME: 3 SECONDS

  • Also...if I try to forward from the USCART, it fails with uj. If I put j6, it will forward, but only be accepted as j3? Am I going to be stuck with using j3?


    [CONQUESTPACS] ImportConverter19.0: forwarded object to GEPACS
    [CONQUESTPACS] Accepted compression: j3
    [CONQUESTPACS] Importconverter19.1: destroyed received image

  • Actually the j3 is plenty fast and only a 200mb study, so I am happy with that. The setting on the US cart just gives me JPEG low, Med, or High. I have High selected.


    Im not getting success placing end after the script. Should I just delete the forward script and put in a export converter?


    Also, the SR from the echo is not forwarding. I am sending that straight from the cart, but then i end up with 2 different SUID's at the destination...therefore 2 different exams. Is it possible that conquest is changing the SUID?

  • did you do:


    ImportConverter1 = if Association.Caller == USMINDRAY1 and Data.PatientSize then Data.PatientSize = Data.PatientSize / 100; script('forward compressed as uj to GEPACS; destroy'); end


    Conquest will not change UIDs unless requested so. I expect the cart generates new uid when you send it again.


    Or try


    ImportConverter1 = if Association.Caller == USMINDRAY1 then if Data.PatientSize then Data.PatientSize = Data.PatientSize / 100 end; script('forward compressed as uj to GEPACS; destroy'); end


    This will forward everything from USMINDRAY1 but only change images with PatientSize defined. Note everything needs to be on a single line.


    Marcel


    Marcel

  • Below is what I am using, but still it will forward any images coming in. However, if I delete the "; script('forward compressed as uj to GEPACS; destroy'); end" and If I use a exportconverter, it works good. However, I have not have success with destroying the image.


    [lua]
    ImportConverter0 = Data["6000,0040"]=nil; Data["6000,0100"]=nil; Data["6000,1500"]=nil; Data["6000,0010"]=nil; Data["6000,0011"]=nil; Data["6000,0050"]=nil; Data["6000,0022"]=nil; Data["6000,0102"]=nil; Data["6000,3000"]=nil; Data["6000,0011"]=nil
    ImportConverter1 = if Association.Caller == USMINDRAY1 and Data.PatientSize then Data.PatientSize = Data.PatientSize / 100 end; script('forward compressed as uj to GEPACS; destroy'); end

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!