为什么当我将“ createMode”选项设置为“复制”时,为什么在图像处理工具箱中的dicomwrite函数为我的diacomatlab文件创建一个新的sopinstanceuid?
13次观看(最近30天)
显示较旧的评论
我想创建一个DICOMATLAB文件的年代ame header information as another DICOMATLAB file that I have. When I use DICOMWRITE and pass the metadata array corresponding to my other DICOMATLAB file (obtained from DICOMINFO) with the 'CreateMode' option set to 'Copy', all the header information matches up except for SOPInstanceUID and MediaStorageSOPInstanceUID.
接受的答案
数学工作Support Team
2010年8月5日
这是Dicomwrite函数的适当行为。Sopinstanceuid中的UID代表“唯一标识符”。当使用DiComwrite将新图像数据输入DICOM文件时,即使复制了其他元数据,新文件也应包含与原始文件不同的UID。
有一个解决方法,需要在图像处理工具箱中修改MATLAB文件。步骤如下:
1.将MATLAB工作目录更改为$ Matlabroot \ Toolbox \ Images \ Images \ Images \ private,其中$ matlabroot是matlab root目录。
2.在MATLAB命令行中,输入以下内容:
编辑dicom_prep_sopcommon
3.评论以下行:
元数据(diCom_name_lookup('0008',,,,'0018')) = dicomuid;
此解决方法可防止新的UID为创建的DiComatlab文件生成。
1条评论
Michaela Daniel
on 27 Jun 2014
亲爱的Mathworks支持团万博1manbetx队!
我有一个相关的问题:
这个问题是否有类似的解决方法?如果是,你能告诉我吗?
提前致谢!
更多答案(2)
阿兰
on 12 Sep 2014
to keep this behavior in compiled code MCR MatLab, what can i do ? I don't find dicom_prep_SOPCommon in the MCR....
Thank you Alain
1条评论
Madhura Suresh
2014年10月8日
嗨,阿兰,
Not all the files from the MATLAB installation are present in the MCR. However, DICOMWRITE should be supported by the MATLAB Compiler. Can you send your Build log, error messages and relevant files with detailed information to
support@mathworks.com
乌尔夫Granlund
on 24 Sep 2021
Hi, relating to this question, are there other tags, apart from the SOP Instance UID, that the DICOM write function changes even if I use CreateMode 'COPY'? I am trying to modify some tags in RTSTRUCT and RTPLAN files, and after only reading the files and writing them back again with DICOMWRITE without modifying any tags in the Info struct, but having applied the workaround mentioned above, the RTSTRUCT and RTPLAN do no longer reference each other correctly, so there must be more changes..?
Is there a way of making the 'COPY' mode a true COPY that does not modify ANY tags?
问候
乌尔夫