EvilDicom 图像损坏
EvilDicom Image Corrupted
我正在尝试使用库来匿名化 dicom 图像。
在某些情况下它工作正常,但在其他情况下最终图像已损坏。我的意思是,图像的像素是错误的,而且最终图像的 FileMetaInformationGroupLength
标签也发生了变化。
当我不对图像进行匿名处理时也会发生这种情况,我只是在新文件中读取和写入图像。
这是我的代码:
//-------------------------------------------- ----------------------
string dir = @"C:\Users\Desktop\CT.dcm";
var dcmBytes = System.IO.File.ReadAllBytes(@dir);
try
{
var dcm = EvilDICOM.Core.DICOMObject.Read(dcmBytes);
var refName = new EvilDICOM.Core.Element.PersonName
{
FirstName = "",
Tag = EvilDICOM.Core.Helpers.TagHelper.PATIENT_NAME
};
dcm.ReplaceOrAdd(refName);
dcm.Write(@"C:\Users\Desktop\CT2.dcm");
}
catch(Exception ex)
{
throw new Exception("EXCEPTION: " + ex.Message);
}
//---------------------------------------- --------------------------
以下是我遇到问题的原始图像:
https://www.dropbox.com/s/s5ase23jl9908jm/3DSlice1.dcm?dl=0
以下是原始图像和最终图像(损坏的图像)的屏幕截图。
https://www.dropbox.com/s/12liy3gbw7dkb4d/Image_corrupted.PNG?dl=0
我不知道像素数据发生了什么。但是我看到 FileMetaInformationGroupLength
标签发生了变化。
原始图像使用传输语法 1.2.840.10008.1.2.4.70 压缩。输出图像使用 1.2.840.10008.1.2 编码,这意味着未压缩。您需要检查在调用 dcm.Write
.
时是否正确应用了此传输语法更改
或者可能是在读取操作时传输语法已经更改。
在任何情况下,请确保传输语法的更改是有意的,正确完成并与 DICOM 标签一致。
我从未使用过 Evil DICOM 工具包,所以我可能无法帮助您编写代码。
我正在尝试使用库来匿名化 dicom 图像。
在某些情况下它工作正常,但在其他情况下最终图像已损坏。我的意思是,图像的像素是错误的,而且最终图像的 FileMetaInformationGroupLength
标签也发生了变化。
当我不对图像进行匿名处理时也会发生这种情况,我只是在新文件中读取和写入图像。
这是我的代码: //-------------------------------------------- ----------------------
string dir = @"C:\Users\Desktop\CT.dcm";
var dcmBytes = System.IO.File.ReadAllBytes(@dir);
try
{
var dcm = EvilDICOM.Core.DICOMObject.Read(dcmBytes);
var refName = new EvilDICOM.Core.Element.PersonName
{
FirstName = "",
Tag = EvilDICOM.Core.Helpers.TagHelper.PATIENT_NAME
};
dcm.ReplaceOrAdd(refName);
dcm.Write(@"C:\Users\Desktop\CT2.dcm");
}
catch(Exception ex)
{
throw new Exception("EXCEPTION: " + ex.Message);
}
//---------------------------------------- --------------------------
以下是我遇到问题的原始图像: https://www.dropbox.com/s/s5ase23jl9908jm/3DSlice1.dcm?dl=0
以下是原始图像和最终图像(损坏的图像)的屏幕截图。 https://www.dropbox.com/s/12liy3gbw7dkb4d/Image_corrupted.PNG?dl=0
我不知道像素数据发生了什么。但是我看到 FileMetaInformationGroupLength
标签发生了变化。
原始图像使用传输语法 1.2.840.10008.1.2.4.70 压缩。输出图像使用 1.2.840.10008.1.2 编码,这意味着未压缩。您需要检查在调用 dcm.Write
.
或者可能是在读取操作时传输语法已经更改。
在任何情况下,请确保传输语法的更改是有意的,正确完成并与 DICOM 标签一致。
我从未使用过 Evil DICOM 工具包,所以我可能无法帮助您编写代码。