Radiation Dose Intelligent Analytics for CT Examinations:   Home |  Features |  The Team |  Get RADIANCE |  Support/FAQ |  Contact Us

 

Frequently Asked Questions

  • Can RADIANCE be run on a virtual server?


    Answer

  • What RIS, PACS, EMR and CPOE systems has it been successfully integrated with?


    Answer

  • Is there a shareable client or user reference list?


    Answer

  • How do I read a radiation dose structured report (RDSR or Dose SR)?


    Answer

  • How is the CodeMeaning field in the RADIANCE database populated?


    Answer

  • What kinds of views can i generate from the data in the relational database? Do you have tools that can generate different views of the data? for example:

    1. How does the dose values compare for an exam procedure on different scanners in the hospital? To find out if one scanner is running hot than another.

    2. A summary of exams acquired and the dose associated with it (daily, monthly, etc).

    Also, what is the accuracy of the OCR software?


    Answer

  • Does RADIANCE read dose sheets from CereTom portable scanners?


    Answer

  • Can this application sit between DICOM streams and can it manage multiple threads?


    Answer

  • Would I need to have an engine transmit all relevant studies to RADIANCE, which would then strip data off and create relevant database entries?


    Answer

  • What data does RADIANCE extract from the dose sheet?


    Answer

  • How much does RADIANCE cost?


    Answer

  • How do I obtain dcm4che to run a DICOM listener?


    Answer

  • How and why should I update the examcodeslookup table?


    Answer

  • It is not clear (a) what is valid and, (b) the role of the CodeValue field in setting up our Institution Specific Examcodeslookup table. As an example, we have an Exam Type code ABWO for CT Abdomen w/o contrast. Would it be valid to replace your code CRCAO for with ABWO the same (or similar) study?


    Answer

  • When updating the examcodeslookup table, does the ID column need to be preserved?


    Answer

  • We are looking into the possibility of launching a dose-tracking study within our hospital system. A significant piece to such a tracking system is obviously the dose calculation/extraction method, and we would be focused on dose calculations for non-CT modalities, particularly fluoroscopy.

    We are examining in-house software development, as well existing technologies. While it appears clear from your website that Radiance is specifically designed to extract data from CT dose sheets, is the infrastructure currently amenable to extracting/calculating dose from fluoroscopic procedures? If not, do you anticipate expanding RADIANCE to cover fluoroscopy in future versions?


    Answer

  • Instead of extracting parameter from dose sheet, can RADIANCE actually extract dose data directly from the DICOM header?


    Answer

  • Can Radiance be also used for other modalities as well? Like Interventional Radiology – our fluoro machine can actually generate a dose report for each exam, but it is in proprietary format and cannot be exported for further data manipulation.


    Answer

  • Can Radiance automatically sum up dose data from different episodes to give a cumulative record?


    Answer

  • In the DICOM header of the image from our angio machine, the 0008 115e gives us the DAP data. Wonder if Radiance can extract this DICOM value?


    Answer

  • I have a problem with connecting to http://localhost/phpmyadmin.


    Answer

  • I've downloaded the .jar executable for the dcm4che toolkit. Do I extract this to the same directory as radiance?


    Answer

  • I was wondering if you could help me setup the utility to Query/Retrieve the DICOM Secondary capture Dose sheets from PACS? I know you have a script available, but can you provide some information on how i can use that?


    Answer

  • We are a bit confused on what models of scanners this software would be applicable for. We have a 2 year old 320 slice Toshiba and a 5 year old 64 slice Toshiba. Is this software something that would benefits us or is this for older model scanners?


    Answer

  • Regarding the text file(s) output by the OCR, they're empty. Radiance created them, there just isn't anything in them. Maybe our OCR isn't running correctly?


    Answer

  • What operating system is required to run RADIANCE?


    Answer

  • I am currently working with a Doctor who attended RSNA 2010 and he has asked me to configure our PACS to send "Dosage Info" to Radiance (His Copy). I have set up and configured Radiance with in our PACS (Synapse) here at Clarian Health. Although there is some confusion as to which port Radiance is listening on..? Is it port 11111 or 11113??? At first we sent to port 11111 with no success then, I configured PACS to send to port 11113 and Radiance has data. Question is, Do I need to sort out this issue or is there an issue to sort out?????


    Answer

  • In the exam code LUT, there are many entries that have duplicate "Code Meanings" yet different CodeValues, DoseLookup values and PublishedDose values. How do we know which entry to use for our CT Abdomen code?


    Answer

  • How exactly are DoseLookup and PublishedDose used?


    Answer

  • Multiple entries with different Doselookup and PublishedDose values, some very different, some subtly different. How do I know which one to use for my CT Abd/Pelv w/contrast? It seems that the exam descriptions are custom for your practice. Too bad we don’t have a standard lexicon for exam descriptions. How did you go about assigning DoseLookup values for the various exams?

    I need to understand how these conversion factors are used with CTDI(vol) and DLP to come up with dose-equivalent. Can you send me the mathematical algorithm used to calculate whole body dose-equivalent in mSv? Perhaps this will help me to understand the DoseLookup values.

    I do not see a “Number Tag” field in the table. Did you mean CodeValue or ID? Does the system look up the DoseLookup value from the verbal description or from the CodeValue? I could not find an exam code in the GE dose sheet header (tag is there, but it is blank). If the look up is by CodeValue or ID, it will not work with GE.

    Another problem I encountered is that I cannot find a RSDR output anywhere. I found the XML file but I’m not sure whether it is a DICOM object. Our current versions of both PACS and RIS do not support RSDR, so I have nothing to compare to.


    Answer

  • After I ran the radiancepipeline.bat, the dose sheet was automatically deleted from the radiance-inbox folder.


    Answer

  • When I run the radiancepipeline.bat file, the original dose sheet disappears and the folder created under radiance-root/radiance/data has no files in it. What's going wrong?


    Answer

  • Since XAMPP is an open source cross-platform web server package, by definition alone, it sounds like anyone out on the web could get in to it. How is our patient data secured? HIPAA Compliance being my concern.


    Answer

  • In the Radiance Personnel Dashboard there is a field for Attending Physician which seems to pull the "Responsible" physician from the MasterFlatFile. What are you using that field for? Is that the physician interpreting the radiology exam, the physician supervising contrast injection, the physician supervising the resident that ordered the exam, or....?


    Answer

  • What data does my DICOM header need to have for RADIANCE to work best?


    Answer

  • Are dose screens required to extract dose(and/or total DLP) figures? I have a Philips dataset with populated DICOM headers, “Exposure Dose Sequence”, but no actual screen save for an OCR.


    Answer

  • Although your installation instructions were easy to follow, I'm finding the install of DCM4CHE to be incomprehensible (... first you need to download and install Apache Ant.... but first you need to install JAVA....but first.....). The documentation for DCM4CHE is very limited. Any suggestions? Is there perhaps a step-by-install document for DMC4CHE somewhere?


    Answer

  • When pasting dose sheets into the radiance inbox (c:\xampp\htdocs\radiance-root\radiance-inbox) is it OK to copy the entire dataset, or is it a requirement that only the dose sheets be placed there?

    If I need to extract: ID, Gender, Age, DOB, Weight, Height, Date of scan, Total DLP, is this possible with Radiance?


    Answer

  • There are various configurations required, as stated in the guides, radiance_config.php and radiance_RDSRconfig.php, among others. What do I need to edit?


    Answer

  • I tried to update our protocols in the examcodeslookup table, but have questions about protocols where we have two body regions (for ex; neck & chest), where do we place these protocols?


    Answer

  • Am I correct by assuming that Radiance has the ability to create structured report?. If yes, does the SR created by Radiance has information about the scan location information? If yes, is it possible to calculate DLP based on the scan length (scan locations are available on the images)..just curious about that....


    Answer

  • I get a bunch of the following errors when I run RADIANCE:

    Notice: Undefined index: verbose in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 53

    Notice: Undefined index: quietmode in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 57

    Notice: Undefined index: fileno in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 61

    Notice: Undefined index: maxfileno in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 67

    Notice: Undefined index: debug in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 70

    Notice: Undefined index: renamedosesheets in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 74

    Notice: Undefined index: queryris in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 78

    Notice: Undefined index: reprocess in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 82 OCR dir: data/OCRinbox-04202011-21940/ data/OCRinbox-04202011-21940/


    Answer

  • Why do I get this error?

    Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'radiance'@'localhost' (using password: YES) in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 95

    Failed to connect to local RADIANCE database!


    Answer

  • What are the steps to take to find the dose screens in a dataset? As you know, there can be hundreds or thousands of files in a CT dataset.


    Answer

  • What are the steps to configure for patient info output to a spreadsheet? i.e. age, weight, patient ID, gender, etc.


    Answer

 


Can RADIANCE be run on a virtual server?

At present, RADIANCE has only been tested on physical Windows PCs. We are planning to transition to a production server that is a Windows cloud PC. There are no inherent limitations in the RADIANCE implementation that require a physical PC. However, the PC running RADIANCE must be networked if you wish to send dose sheets from PACS or your scanners.


What RIS, PACS, EMR and CPOE systems has it been successfully integrated with?

I have tested it with a GE PACS (this is how it was demo'd at RSNA). It is integrated at our institution with our GE IDXv10 RIS, but the version being distributed will assume that it runs without RIS integration.


Is there a shareable client or user reference list?

There is a Google group accessible at http://groups.google.com/group/radiance-users.


How do I read a radiation dose structured report (RDSR or Dose SR)?

ReadDoseSR and WriteDoseSR Java applications are included with RADIANCE. To run the ReadDoseSR application, open a cmd shell in Windows and go to the radiance-root/radiance folder. In that folder should be two JAR files, one named pixelmed* and one named mysql-connector*. Type the following using the full names of these files below instead of the wild cards:

java -classpath pixelmed*.jar;mysql-connector*.jar;. ReadDoseSR

ReadDoseSR will automatically put the contents of the RDSR into the RADIANCE database. If you set overwrite to zero in the radiance_RDSRconfig.php, it will not overwrite existing records.


How is the CodeMeaning field in the RADIANCE database populated?

CodeValue and CodeMeaning are both in the DICOM header - it just happens that for some studies, they do not seem to get defined. So in cases where CodeMeaning is blank, RADIANCE takes the contents of the RequestedProcedureDescription tag, because I need something to use for the NLP in order to try and figure out what type of study it is. If CodeValue is never defined but you update the examcodeslookup with your chargemaster, you should still be able to correctly guess the study type, because a matching procedure description will be found.


What kinds of views can i generate from the data in the relational database? Do you have tools that can generate different views of the data? for example:

1. How does the dose values compare for an exam procedure on different scanners in the hospital? To find out if one scanner is running hot than another.

2. A summary of exams acquired and the dose associated with it (daily, monthly, etc).

Also, what is the accuracy of the OCR software?

You can generate any kinds of views from the data in the relational database if you export it to Microsoft Excel or Access. We have developed a customizable dashboard to accompany RADIANCE that allows you to do both #1 and #2 above.

The OCR software is quite accurate now. We did a validation on it earlier in the year where it was brought up to near-100% accuracy as we found and fixed systematic errors. This was mostly tested on Siemens and GE dose sheets. If you do identify errors that are not corrected, please do let us know.


Does RADIANCE read dose sheets from CereTom portable scanners?

Yes - the dose sheet has a very different format from that of other vendors, but can be parsed by RADIANCE.


Can this application sit between DICOM streams and can it manage multiple threads?

RADIANCE is designed to sit on a PC that either retrieves or receives DICOM dose sheets from PACS. It is not inherently designed to send anything back to PACS. However, it does generate radiation dose structured reports, which you could send back to PACS if desired. This would need to be configured outside of RADIANCE.


Would I need to have an engine transmit all relevant studies to RADIANCE, which would then strip data off and create relevant database entries?

The original version of RADIANCE requires an external means of pushing dose sheets to the RADIANCE PC, either from PACS or scanners. The newest version of RADIANCE (to be released in June 2011) will come with a script that can be configured to query a PACS or other archive using DICOM operations and retrieve the dose sheets automatically.


What data does RADIANCE extract from the dose sheet?

RADIANCE extracts both CTDI and DLP from the dose sheet, as well as kV, mAs and (if available) reference mAs. Additional data about the patient, study, institution and scanner are extracted from the DICOM header.


How much does RADIANCE cost?

RADIANCE is available at the low, low price of $0. It is a freely available, open-source software designed to facilitate dose monitoring and dose reporting.


How do I obtain dcm4che to run a DICOM listener?

From this page, click on the SourceForge link at the top of the page, choose 2.0.24 or later and then download the *bin.zip file. That should give you both Windows and Linux executables. Then extract them anywhere you wish on the PC and specify the full path to find dcmrcv in the Windows batch file where that one-line command is. For example, if you install dcm4che it under c:\, the command to run the listener should begin with "c:\dcm4che-2.0.24\bin\dcmrcv".


How and why should I update the examcodeslookup table?

To correctly update the exam codes table, all the fields in a row must match. So, if you correct an exam code (i.e., the CodeValue field), you also have to correct the DoseLookup and the Subspecialty and BodySite. While it would be helpful to also update CodeMeaning, it is not essential as long as it is close. In other words, don't put a chest exam code with "CT abdomen" as the CodeMeaning. I think that publisheddose may not be up to date, so updating that is optional if you are not going to use the data for some comparison. It is essential that DoseLookup field is correct, because it is what RADIANCE uses to find the correct conversion factor in the NumberTag field of the publisheddoselookup table.

For the most correct analysis, you should update the examcodeslookup table before you run RADIANCE.


It is not clear (a) what is valid and, (b) the role of the CodeValue field in setting up our Institution Specific Examcodeslookup table. As an example, we have an Exam Type code ABWO for CT Abdomen w/o contrast. Would it be valid to replace your code CRCAO for with ABWO the same (or similar) study?

To properly update the examcodeslookup table, you must make sure that the correspondence between the CodeValue, CodeMeaning, BodySite, Subspecialty and DoseLookup is maintained. The PublishedDose may not be accurate - you can update this if you wish, but it is not used to estimate the whole body effective dose. So in your example, if you update the CodeValue and CodeMeaning for a CT abdomen, you have to make sure that BodySite is set to ABDOMEN, Subspecialty is set to BODY CT and DoseLookup is set to 5. DoseLookup corresponds to the NumberTag field in the publisheddoselookup table, and this is what RADIANCE uses to pick the appropriate ConversionFactor. So it is important to maintain this correspondence above all.


When updating the examcodeslookup table, does the ID column need to be preserved?

The ID is just the primary key. It doesn't matter what the value, or whether it's sequentially incremented, is as long as it's unique.


We are looking into the possibility of launching a dose-tracking study within our hospital system. A significant piece to such a tracking system is obviously the dose calculation/extraction method, and we would be focused on dose calculations for non-CT modalities, particularly fluoroscopy.

We are examining in-house software development, as well existing technologies. While it appears clear from your website that Radiance is specifically designed to extract data from CT dose sheets, is the infrastructure currently amenable to extracting/calculating dose from fluoroscopic procedures? If not, do you anticipate expanding RADIANCE to cover fluoroscopy in future versions?

At present we are focusing on CT, however, we would certainly be interested in extending the capabilities of RADIANCE to include fluoro. Our main limitation in doing that at our institution is that our fluoro machines don't report any dose parameters, and thus all that is recorded is fluoro time, which is a poor indicator of dose. If dose is somehow reported, RADIANCE could be modified to include fluoroscopy dose data.


Instead of extracting parameter from dose sheet, can RADIANCE actually extract dose data directly from the DICOM header?

Depends on the data you want. RADIANCE already extracts some information from the DICOM header about the patient, institution, scanner, etc. But only Philips dose sheets include dose data in the DICOM header. What RADIANCE does in this case is parses the dose sheet for the dose data and verifies it against the data in the header.


Can Radiance be also used for other modalities as well? Like Interventional Radiology – our fluoro machine can actually generate a dose report for each exam, but it is in proprietary format and cannot be exported for further data manipulation.

At present RADIANCE only handles CT dose sheets, because we do not get dose sheets from our fluoro machines. Depending on the format of the dose sheet, RADIANCE could be modified to support fluoro studies.


Can Radiance automatically sum up dose data from different episodes to give a cumulative record?

Yes - this capability exists in the dashboard which was sent separately from the original RADIANCE distribution. Remember, however, that "cumulative" dose is not technically valid, because we don't understand how the body repairs itself between radiation exposures. For example, an estimated 100 mSv on a single occasion is not the same as an estimated 100 mSv accumulated over a period of time.


In the DICOM header of the image from our angio machine, the 0008 115e gives us the DAP data. Wonder if Radiance can extract this DICOM value?

RADIANCE can be modified to extract the DAP, but I'm not sure how the OCR tool will handle the dose sheet from the angio machine.


I have a problem with connecting to http://localhost/phpmyadmin.

The http://localhost/phpmyadmin refers to a website installed on your local RADIANCE computer. It is not a website on the internet. You need to install XAMPP or some other web server for RADIANCE to run correctly. If you are sitting at the computer where you installed it, you can use the http://localhost URL. Otherwise you need to substitute localhost with the IP address of the computer where it was installed.


I've downloaded the .jar executable for the dcm4che toolkit. Do I extract this to the same directory as radiance?

You can install dcm4che in any directory on your hard drive as long as you put the full path in the batch file where you call dcmrcv. For example, at our institution, it is stored under c:\dcm4che-2.0.24\. Please make sure you downloaded the correct dcm4che. Go to the dcm4che website and download the *bin.zip file.


I was wondering if you could help me setup the utility to Query/Retrieve the DICOM Secondary capture Dose sheets from PACS? I know you have a script available, but can you provide some information on how i can use that?

The script which queries PACS is called radiancedcm.php and should be in your radiance-root/radiance folder. It requires you to install dcmtk, which you can download from http://dcmtk.org. The script uses system commands to call the dcmtk "findscu" and "movescu" commands, so make sure you edit the script to point to the location of dcmtk on your hard drive. You can try the script as-is and see if it works, but first you must edit the settings at the top of the code (lines 28-32) to match your PACS IP, port and AE title. The script also requires you to have the PC running RADIANCE set up as a DICOM listener (i.e., running dcmrcv with AE title RADIANCE).


We are a bit confused on what models of scanners this software would be applicable for. We have a 2 year old 320 slice Toshiba and a 5 year old 64 slice Toshiba. Is this software something that would benefits us or is this for older model scanners?

RADIANCE should be able to handle Toshiba dose sheets from the past few years. I understand that Toshiba updated their dose sheet format some time in the last few years but I don't have any samples of the "older" dose sheet. Can you look at the dose sheets from your two different scanners and tell me if they look the same or different? I don't think there'll be any trouble with the 320-slilce, but I'm honestly not sure about the 64-slice because of this updating issue.


Regarding the text file(s) output by the OCR, they're empty. Radiance created them, there just isn't anything in them. Maybe our OCR isn't running correctly?

That's correct - you should always get 3 files for each dose sheet: a *.txt, a *.xml and a *.jpg. RADIANCE uses the *.txt and the *.xml; the *.jpg is just for reference.

Is the *.jpg totally black? You might need to tweak the dcmconvertGOCR.bat file in the radiance-root/DCMGOCR-bin. Look for the two lines that have the +Wm option specified and take it out:

%gocrpath%\dcmj2pnm +Wm +oj %fname% %fname%.jpg %gocrpath%\dcmj2pnm +Wm +op %fname% %fname%.pnm

becomes

%gocrpath%\dcmj2pnm +oj %fname% %fname%.jpg %gocrpath%\dcmj2pnm +op %fname% %fname%.pnm

That flag does some thresholding of the dose sheet before it makes the pnm file that the OCR uses, so perhaps the thresholding is causing problems.


What operating system is required to run RADIANCE?

RADIANCE currently runs on Windows and hase been tested on Windows XP, Windows Server 2003, and Windows 7. It will even run on Linux and MacOSX if the OCR software is compiled accordingly.


I am currently working with a Doctor who attended RSNA 2010 and he has asked me to configure our PACS to send "Dosage Info" to Radiance (His Copy). I have set up and configured Radiance with in our PACS (Synapse) here at Clarian Health. Although there is some confusion as to which port Radiance is listening on..? Is it port 11111 or 11113??? At first we sent to port 11111 with no success then, I configured PACS to send to port 11113 and Radiance has data. Question is, Do I need to sort out this issue or is there an issue to sort out?????

There is no fixed port # for RADIANCE to listen on. You can configure it to listen on any port you wish. I think the version running here listens on 1024, and the one at the RSNA demo was listening on 11112. Your doctor should have a listener configured on his RADIANCE PC - please ask him what port he set it up to listen on. If he did not set up a listener, he does need to do this. It requires downloading dcm4che and running the dcmrcv command as follows:

c:\dcm4che-2.0.23\bin\dcmrcv RADIANCE:1024 -dest c:\xampp\htdocs\radiance-root\radiance-inbox

Please replace the path with the location of your dcm4che installation and the "RADIANCE" AE title with whatever you've chosen as your AE title. The port # can be any open port on the RADIANCE PC - 1024 is not necessary. You should not have to change the destination of the dose sheets.


In the exam code LUT, there are many entries that have duplicate "Code Meanings" yet different CodeValues, DoseLookup values and PublishedDose values. How do we know which entry to use for our CT Abdomen code?

You are correct that there are duplicate entries in the LUT - you do not need to preserve this redundancy at your institution. As long as you preserve the correspondence between the DoseLookup field in the examcodeslookup table and the correct NumberTag field in the publisheddoselookup table for the body part being imaged, you can enter the exam codes at your institution into the examcodeslookup table as if you are filling out a spreadsheet.


How exactly are DoseLookup and PublishedDose used?

PublishedDose is meant to be a reference field only; it is currently not used in the analysis. DoseLookup in the examcodeslookup table corresponds to the NumberTag field in the publisheddoselookup table. That is how the correct conversion factor is applied.


Multiple entries with different Doselookup and PublishedDose values, some very different, some subtly different. How do I know which one to use for my CT Abd/Pelv w/contrast? It seems that the exam descriptions are custom for your practice. Too bad we don’t have a standard lexicon for exam descriptions. How did you go about assigning DoseLookup values for the various exams?

I need to understand how these conversion factors are used with CTDI(vol) and DLP to come up with dose-equivalent. Can you send me the mathematical algorithm used to calculate whole body dose-equivalent in mSv? Perhaps this will help me to understand the DoseLookup values.

I do not see a “Number Tag” field in the table. Did you mean CodeValue or ID? Does the system look up the DoseLookup value from the verbal description or from the CodeValue? I could not find an exam code in the GE dose sheet header (tag is there, but it is blank). If the look up is by CodeValue or ID, it will not work with GE.

Another problem I encountered is that I cannot find a RSDR output anywhere. I found the XML file but I’m not sure whether it is a DICOM object. Our current versions of both PACS and RIS do not support RSDR, so I have nothing to compare to.

If you look at the NumberTag field in the publisheddoselookup table, not in the examcodeslookup table, you will see numbers that match up to the DoseLookup field in the examcodeslookup table. If you look at the conversion factor in publisheddoselookup, you will see that all the studies in your example map to the same factor of 0.015. They're all essentially a CT abdomen or CT abdomen/pelvis, with different exam codes for some odd reason (I think because of a RIS upgrade that happened some years ago). To make sure you have the correct assignment from your exam codes to conversion factors, just make sure that the body parts match up. There are conversion factors for head, neck, chest, abdomen, pelvis and lower extremity. Upper extremity assumes that the extremity was scanned while parallel to the chest, so it gets the chest code. You can find the most recent conversion factor values in the Christner paper from 2010 (I think in AJR, but not sure).

In order to get from DLP to estimated whole body effective dose, you multiply the conversion factor by the total DLP for that body part. Oh, I just noticed your comment below about how the CodeValue is missing. What RADIANCE currently does is try two methods for finding the correct matching exam code. It will either try to match on CodeValue, which is not feasible with your studies. Alternatively, it will try to guess the best matching conversion factor based on your exam description. So even if you don't update the examcodeslookup table, it will still try to figure out the estimated dose. I can't promise that it is 100% foolproof (it's using NLP), but it does work.

Your RADIANCE installation may not be producing RDSRs - check the radiance_config.php file under radiance-root/radiance to make sure that the $writerdsr variable is set to "1" or "true". If it is, you should get an SR and an XML representation of each dose sheet output to the radiance-root/radiance/RDSR-outbox. If RADIANCE is not correctly importing the studies, you may not get RDSRs, i.e., you may have to resolve the examcodeslookup issues first.


After I ran the radiancepipeline.bat, the dose sheet was automatically deleted from the radiance-inbox folder.

The dose sheet is not deleted, just moved. If you look under radiance-root/archive-radiance-inboxes, you will find folders with the original DICOM dose sheets you have run. The output of the OCR goes to radiance-root/radiance/data/OCRinbox--. RADIANCE is configured to automatically archive both the original DICOM dose sheets and the OCR output - you can turn off this archiving by editing the radiancepipeline.bat and the radiance.php files.


When I run the radiancepipeline.bat file, the original dose sheet disappears and the folder created under radiance-root/radiance/data has no files in it. What's going wrong?

It might be a problem with the format in which your computer is generating the date.

The problem is arising with what DOS is returning in response to the "date" command in the radiancepipeline.bat file. On my end, I get a 6 digit date (mmddyy) which becomes part of various directory names that RADIANCE makes. On your computer, it seems to be producing "2/01 Tue" and the forward slash "/" is interpreted by Windows as a directory name, which causes problems in later steps of the pipeline. This is a new problem which other users have not yet reported; perhaps it has something to do with international vs. US versions of Windows, though I am not certain.

To fix it, you can change the line in radiancepipeline.bat that reads

set argdate=%date:~4,2%%date:~7,2%%date:~10,4%-%RANDOM%

to something simpler without the date command, such as simply

set argdate=%RANDOM%

So your directories will not include the date on which the dose sheets were processed, but only be coded by a random number. This will not cause RADIANCE to malfunction in any way, and will only affect the directory names for where things get archived under archive-radiance-inboxes/ and radiance/data.

You can also try rearranging the way the date is generated by using

set argdate=%date:~6,4%%date:~3,2%%date:~0,2%-%RANDOM%

which will give you a folder named yyyymmdd- followed by a random number. Yet another alternative would be to change the Windows control panel setting for how date is generated to produce a date without a "/".


Since XAMPP is an open source cross-platform web server package, by definition alone, it sounds like anyone out on the web could get in to it. How is our patient data secured? HIPAA Compliance being my concern.

XAMPP is an open-source software package, but RADIANCE is intended to live behind your institution's firewall, not somewhere on the Internet. Even behind your firewall, technically anyone who knew the correct URL could access the database. I would recommend not sharing the URL too widely unless your plan is to make the data available to all your radiologists, in which case you should set up a password protected webpage for access to all RADIANCE-related pages. There is also a default password set up for accessing the RADIANCE database, in case anyone were to accidentally access the URL (again, behind your firewall). If you want to change this default password, you also have to edit it in the code, so that RADIANCE is able to log into the database to make updates.


In the Radiance Personnel Dashboard there is a field for Attending Physician which seems to pull the "Responsible" physician from the MasterFlatFile. What are you using that field for? Is that the physician interpreting the radiology exam, the physician supervising contrast injection, the physician supervising the resident that ordered the exam, or....?

The "ResponsibleLast/FirstName" fields are meant to store the attending radiologist of record who finalizes the report in the RIS. At Penn, we have RIS integration that allows us to populate that field in addition to the "Contributing*" (residents/fellows) and "Performing*" (techs) individuals. The "RequestingLast/FirstName" is the name of the physician of record that ordered the study - attending, resident or fellow.


What data does my DICOM header need to have for RADIANCE to work best?

The CodeValue (0008,0100) and CodeMeaning (0008,0104) fields in your DICOM study headers are most helpful. If CodeMeaning is not specified, StudyDescription or RequestedProcedureDescription would be extremely helpful.


Are dose screens required to extract dose(and/or total DLP) figures? I have a Philips dataset with populated DICOM headers, “Exposure Dose Sequence”, but no actual screen save for an OCR.

Technically, yes, you need dose screens, but that's because only Philips includes the dose parameters in the non-RDSR DICOM header. There is code in RADIANCE that parses the dose data from a Philips DICOM header, but the current implementation assumes you will always give it a dose sheet with the same data. So right now the data parsed from the header is only used to validate the data extracted from the dose sheet. You are welcome to hack RADIANCE such that for a Philips study, it ignores the dose sheet and only uses the DICOM header data, but you'll still need to give it an image from the study so as to get the parameters from the DICOM header.


Although your installation instructions were easy to follow, I'm finding the install of DCM4CHE to be incomprehensible (... first you need to download and install Apache Ant.... but first you need to install JAVA....but first.....). The documentation for DCM4CHE is very limited. Any suggestions? Is there perhaps a step-by-install document for DMC4CHE somewhere?

Are you doing the last part of the install where you need dcm4che to run a DICOM listener on the RADIANCE PC? If so, you want to download the dcm4che2 version of the toolkit, which is much easier to install. If you go to the 2.0.25 dcm4che page and click on the *bin.zip file, it should give you what you need. I think I have tested RADIANCE with versions 2.0.23 and 2.0.24, but I doubt anything will be dramatically different in 2.0.25 as far as the DICOM listener functionality.


When pasting dose sheets into the radiance inbox (c:\xampp\htdocs\radiance-root\radiance-inbox) is it OK to copy the entire dataset, or is it a requirement that only the dose sheets be placed there?

If I need to extract: ID, Gender, Age, DOB, Weight, Height, Date of scan, Total DLP, is this possible with Radiance?

It's preferable to only put the dose sheet there. If you put the entire dataset there, RADIANCE will try to process every file but will fail on all the image files and only correctly process the dose sheet.

With the exception of gender, RADIANCE should extract all the parameters you list, as long as they are populated in the DICOM header. I found a bug in the release version where I was capturing gender from the DICOM header but not updating it in the database; this is fixed in the upcoming v2.0 release. I can send you a fix or explain how to fix it in your version (it won't be difficult) if you want it sooner.


There are various configurations required, as stated in the guides, radiance_config.php and radiance_RDSRconfig.php, among others. What do I need to edit?

You shouldn't have to edit the config files much; the default settings should work for you. However, if you do need to edit them, you can open them in WordPad (formats better than Notepad), edit and save. They don't have to be compiled.


I tried to update our protocols in the examcodeslookup table, but have questions about protocols where we have two body regions (for ex; neck & chest), where do we place these protocols?

The combined neck/chest protocol is going to be a challenge because there are different k factors for neck (0.0059) and chest (0.014). How often is this type of study done? Is it feasible that some manual intervention could be performed to update the doses for that protocol? If the DLP for the neck and the DLP for the chest are listed separately, you could modify the RADIANCE code to look for these two separate DLPs and compute the estimate dose for each separately. If they are reported as a single DLP, that is more challenging and there is no immediate solution without knowing the scan lengths for the neck and chest, respectively.


Am I correct by assuming that Radiance has the ability to create structured report?. If yes, does the SR created by Radiance has information about the scan location information? If yes, is it possible to calculate DLP based on the scan length (scan locations are available on the images)..just curious about that....

Yes, RADIANCE can both read and write structured reports. I'm not sure if the RDSR created by RADIANCE will have scan location info because that typically comes from the individual images and not from the dose sheet. However, you could shortcut this by dividing DLP/CTDIvol and getting the scan length estimate from that. But again, you'd need two separate DLPs for that to work.


I get a bunch of the following errors when I run RADIANCE:

Notice: Undefined index: verbose in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 53

Notice: Undefined index: quietmode in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 57

Notice: Undefined index: fileno in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 61

Notice: Undefined index: maxfileno in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 67

Notice: Undefined index: debug in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 70

Notice: Undefined index: renamedosesheets in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 74

Notice: Undefined index: queryris in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 78

Notice: Undefined index: reprocess in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 82 OCR dir: data/OCRinbox-04202011-21940/ data/OCRinbox-04202011-21940/

The newest version of XAMPP includes a modification to PHP that produces these errors. RADIANCE will continue to work correctly despite these errors. To keep these errors from showing up, you can modify radiance.php and add the line "error_reporting(0); " (including the semicolon but excluding the quotes) under the comments at the top of the file.


Why do I get this error?

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'radiance'@'localhost' (using password: YES) in C:\xampp\htdocs\radiance-root\radiance\radiance.php on line 95

Failed to connect to local RADIANCE database!

This error suggests that the password for the "radiance" login to the XAMPP database is incorrect. RADIANCE expects the default password provided at installation. If you changed the XAMPP password when you installed it, you will have to modify radiance_config.php accordingly to enable RADIANCE to access the database.

You will also have to make sure that that user has full rights to the radiance database in phpmyadmin (under the Privileges tab).


What are the steps to take to find the dose screens in a dataset? As you know, there can be hundreds or thousands of files in a CT dataset.

Siemens always stores dose sheets in series 501, GE in series 999. Toshiba varies - more recently I think they've been using series 9000 for the dose sheet and 9100 (or 9001?) for the structured report, but for earlier scanners/firmware the dose sheet series number varied. One thing you can try is grabbing all the series with only one or two images. You might get some scout images along the way though. Future versions of RADIANCE will try to auto-detect dose sheets even if an entire study is provided.


What are the steps to configure for patient info output to a spreadsheet? i.e. age, weight, patient ID, gender, etc.

To get data out of the database and into a spreadsheet, there are instructions in the users' guide PDF linked from the RADIANCE website. You can do this from phpMyAdmin.