I am trying to alter an image and then write it back to .dcm format with its original header metadata. This is an RT image radiograph file (meaning it has structure contour data included in the header attributes (50xx,3000)). Using dicomwrite, I get the error: "Error using dicom_add_attr>validate_data (line 122) Attribute (5000,3000) has wrong data type."
I have done nothing to the header data besides read it directly from the original dicom file. I need to write this image back to dicom with its header intact. Are there any options to ignore discrepancies in Matlab's validation?
Here is a test that produces the error:
img = dicomread('RI.Field 1.dcm');
hdr = dicominfo('RI.Field 1.dcm');
dicomwrite(img,'file.dcm',hdr,'CreateMode','copy');
I have read that the solution is Convert each structure to uint16 before passing the metadata to dicomwrite but i don't know how to do it.