dcm4chee-arc-light - Issues on retrieving JPG/JPEG images using WADO-URI

390 views
Skip to first unread message

Alexandre Savaris

unread,
Jun 7, 2019, 2:51:09 PM6/7/19
to dcm4che
Hello all.

I intend to use dcm4chee-arc-light 5.16.0 for storing JPG/JPEG images from a number of different specialties, acquired from heterogeneous devices. In testing the storage and retrieval of such images, I have observed the following behaviour:
- sending images using STOW-RS from dcm4che-5.16.3 toolkit, with the parameter "--pixel-header": OK, the image is successfully sent to PACS;
- retrieving images using WADO-RS from dcm4che-5.16.3 toolkit, using the parameter "-a jpeg": OK, the image is successfully retrieved from PACS;
- retrieving images using WADO-URI: OK, the image is successfully retrieved from PACS. However, the retrieved image is red-colored. The request is as follows:

https://<pacs_base_url>/dcm4chee-arc/aets/AS_RECEIVED/wado?requestType=WADO&studyUID=<studyinstanceuid>&seriesUID=<seriesinstanceuid>&objectUID=<sopinstanceuid>&contentType=image/jpeg&frameNumber=1

The original (sent) and red-colored (retrieved using wado-uri) images are attached to this message. Any ideas for such behaviour?


Thanks in advance.

Regards,
Alexandre Savaris

original.jpg
retrieved_wadouri.jpg

vrinda nayak

unread,
Jun 11, 2019, 6:11:26 AM6/11/19
to dcm4che
Hello,

Can you please specify the exact parameters/flags you used while using the stow-rs tool to send this image to archive? When I used just --pixel-header and used WADO-URI service, I didn't get the red-colored image as you have attached above, but instead I get an error on archive side as follows :
2019-06-11 11:50:26,975 INFO  [org.dcm4chee.arc.wado.WadoURI] (default task-5) Process GET /dcm4chee-arc/aets/AS_RECEIVED/wado?requestType=WADO&studyUID=2.25.185972937102394389358418529931293279790&seriesUID=2.25.297891147984946032883158366576857301253&objectUID=2.25.29353955950367107624649984352172873465&contentType=image/jpeg&frameNumber=1 from nu...@127.0.0.1
.........
.........
2019-06-11 11:50:27,167 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-5) RESTEASY002025: Unknown exception while executing GET /aets/AS_RECEIVED/wado: java.lang.IllegalArgumentException: Raster ByteInterleavedRaster: width = 2480 height = 3507 #numDataElements 3 dataOff[0] = 2 is incompatible with ColorModel ColorModel: #pixelBits = 24 numComponents = 3 color space = org.dcm4che3.image.YBRColorSpace@32472ab7 transparency = 1 has alpha = false isAlphaPre = false
    at java.desktop/java.awt.image.BufferedImage.<init>(BufferedImage.java:622)
    at org.dcm4che3.imageio.plugins.dcm.DicomImageReader.read(DicomImageReader.java:494)
    at org.dcm4chee.arc.wado.RenderedImageOutput.write(RenderedImageOutput.java:117)
.........
.........
2019-06-11 11:50:27,170 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-5) RESTEASY002020: Unhandled asynchronous exception, sending back 500: org.jboss.resteasy.spi.UnhandledException: java.lang.IllegalArgumentException: Raster ByteInterleavedRaster: width = 2480 height = 3507 #numDataElements 3 dataOff[0] = 2 is incompatible with ColorModel ColorModel: #pixelBits = 24 numComponents = 3 color space = org.dcm4che3.image.YBRColorSpace@32472ab7 transparency = 1 has alpha = false isAlphaPre = false
    at org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:265)
.........
.........
    at org.dcm4chee.arc.wado.WadoURI.buildResponse(WadoURI.java:266)
    at org.dcm4chee.arc.wado.WadoURI.get(WadoURI.java:214)
    at org.dcm4chee.arc.wado.WadoURI$Proxy$_$$_WeldClientProxy.get(Unknown Source)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
.........
.........
Caused by: java.lang.IllegalArgumentException: Raster ByteInterleavedRaster: width = 2480 height = 3507 #numDataElements 3 dataOff[0] = 2 is incompatible with ColorModel ColorModel: #pixelBits = 24 numComponents = 3 color space = org.dcm4che3.image.YBRColorSpace@32472ab7 transparency = 1 has alpha = false isAlphaPre = false
    at java.desktop/java.awt.image.BufferedImage.<init>(BufferedImage.java:622)
    at org.dcm4che3.imageio.plugins.dcm.DicomImageReader.read(DicomImageReader.java:494)
    at org.dcm4chee.arc.wado.RenderedImageOutput.write(RenderedImageOutput.java:117)

Was there any other option you set in addition to --pixel-header when using stow-rs tool?

- When I use jpg2dcm tool to convert this image to dicom file and then sent it to archive using storescu tool or directly use Upload DICOM object using archive UI or even if on a particular study I just upload directly the jpeg file, I see the original image as it is when WADO-URI service is invoked. See attached.
Screenshot_2019-06-11 dcm4chee-arc-ui.png

Alexandre Savaris

unread,
Jun 20, 2019, 10:12:30 AM6/20/19
to dcm4che
Hello, vrinda.

The parameter/flag "--pixel-header" was the only one used in calling the stow-rs tool. We observed the server-side error reported by you when using dcm4chee-arc-light version 5.16.3. For this reason we opt for using the version 5.16.0 instead.

Regarding the original question, we observed that the red-colored image is retrieved when the stored content is a progressive/interlaced JPG/JPEG. The conversion of the original image to a baseline JPG/JPEG before sending it to PACS solves the problem.

Regards,
Alexandre Savaris

vrinda nayak

unread,
Jun 27, 2019, 5:19:34 AM6/27/19
to dcm4che
See similar related issue which is fixed and will be available in 5.17.1.
Reply all
Reply to author
Forward
0 new messages