Как определить, какой синтаксис передачи использовать для каждого изображения DICOM?
Я очень плохо знаком с протоколом DICOM, и у меня есть вопросы, связанные с "Синтаксисом передачи", который необходимо выбрать перед отправкой изображений.
У меня есть список изображений, которые я хочу отправить на удаленный сервер. Изображения в этом списке могут быть в одном из следующих форматов: CR, CT, DOC, DX, ES, KO, MG, MR, NM, OT, PR, PT, RF, SC, US, XA. Поэтому мне было интересно, есть ли какой-нибудь список, где я могу увидеть, какой синтаксис передачи, какой формат DICOM соответствует? Я могу взять свои изображения DICOM и определить их формат сверху, но я не уверен, какой синтаксис передачи использовать для каждого из них.
Это пример, когда я жестко программирую одно изображение:
DicomDataSet ct = new DicomDataSet("CT.dcm");
DicomDataSetCollection instancesToSend = new DicomDataSetCollection();
instancesToSend.Add(ct);
DicomAssociation connection = new DicomAssociation();
// "Send CT in Implicit VR Little endian format"
connection.RequestedContexts.Add(ct.SOPClass, "1.2.840.10008.1.2");
connection.Open("remote host", 104, "client", "server");
connection.SendInstances(instancesToSend);
connection.Close();
Как я уже сказал, у меня есть список изображений. Я могу взять каждый из них в цикле, но как узнать, какой синтаксис передачи использовать для каждого изображения DICOM?
1 ответ
Пока вы только хотите создавать и отправлять изображения, разумным решением является поддержка только Implicit Little Endian. Это синтаксис передачи по умолчанию в DICOM - каждая система, которая утверждает, что является DICOM-совместимой, должна поддерживать его.
Это станет намного сложнее, когда вы захотите применить сжатие с потерями или вам понадобятся объекты.