I've got a problem with some JPEGLossless encoded files that are contained within dicom files. Most of my test files are decoded correctly but some like the one appended to this post result in unexpected/wrong pixeldata. It looks as if the hightest bits are somehow cut off.
I'll attach the source pixeldata including the jpeg header, the resulting file using code from the jpegview example (opening the dicom picture itself with jpegview produces the same wrong picture by the way) and the correct result (using irfanview for example or the pegasus image processing library) to this post.
The format of the picture is 512x512x8bit grayscale.
I'm not sure what is going wrong here, but as it works with both Irfanviews DICOM plugin (which gets the whole file as input) and the pegasus library (which only gets the pixeldata) I suppose that the problem lies somewhere in the CJPEGDecoder class. I tried to find the problem there.. but have not found any hint to the problem.
I can also attach the complete DICOM File here or upload it somewhere.. but it is a multiframe file and has a size of around 4.5 mb
Can someone please point me into the right direction?
Thanks in advance.
thanks for your report and for detailed information, we were able to reproduce the issue. This file was encoded with restart intervals after each image row. We will investigate the issue and I'll update your on this.
Note, you may submitt this issue through Intel Premier Support to get automatic updates on status of this issue.
sorry I did not provide update for you. We have investigated that issue and provided fix in IPP 5.3 update 2 which will be available in week or two.