C-Find Query - Требуется ли StudyInstanceUID для запросов уровня серии? - PullRequest
3 голосов
/ 03 апреля 2019

В этот ответ говорит:

в DICOM вы должны предоставить все уникальные ключи (идентификатор пациента, UID экземпляра исследования, UID экземпляра серии и UID экземпляра SOP) до уровня, который вы запрашиваете

Я ищу ссылку на стандарт DICOM, в котором это сказано?

В частности, мне нужны «доказательства», что StudyInstanceUID требуется для запросов уровня серии.

Ответы [ 2 ]

4 голосов
/ 03 апреля 2019

Глядя на ваш комментарий к прочему ответу @kritzel_sw, я пытаюсь объяснить это дальше и добавить дополнительные «доказательства».

Список идентификаторов на определенных уровнях:
- Уровень пациента: ID пациента
- Уровень исследования: UID экземпляра исследования
- Уровень серии: UID экземпляра серии
- Уровень изображения: UID экземпляра SOP

скопировано с здесь : уровни запросов - корень пациента:

Query Levels - Patient Root

Следующее скопировано с здесь (C.3.2 Информационная модель корневого запроса / извлечения исследования):

Информационная модель корневого запроса / извлечения исследования идентична информационной модели корневого запроса / извлечения пациента, за исключением верхнего уровняуровень обучения.Атрибуты пациентов считаются атрибутами исследований.

В любой модели поддерживаются два типа запросов - Иерархический и Реляционный.То, что цитируется в другом ответе, и этот ответ о Иерархическом запросе, который является реализацией по умолчанию.Поддержка реляционных запросов является частью расширенного согласования, которое является необязательным.

Ниже скопировано здесь (C.5 Согласование ассоциации)

SOP Классы запроса/ Получить класс обслуживания, который включает службы запросов, основанные на операции C-FIND, может использовать подпункт расширенного согласования класса SOP для согласования таких параметров, как реляционные запросы и расширенное многокадровое преобразование изображений.

и здесь (C.4.1.2.2 Расширенное поведение SCU)

Расширенное поведение SCU должно быть согласовано во время установления Ассоциации.Если опция в расширенном поведении не согласована при согласовании, то в отношении этой опции должно выполняться только базовое поведение SCU.Расширенное поведение SCU включает все базовое поведение со следующей опцией:

  • Реляционные запросы
  • Улучшенное преобразование многокадровых изображений

У пациентаКорневая иерархическая модель, сначала необходимо выполнить запрос на уровне ПАЦИЕНТА, чтобы получить список исследований (с UID экземпляра исследования в ответе).Затем выполните дальнейший запрос на уровне STUDY, чтобы получить список Series (с UID экземпляра Series в ответе) и т. Д. ...

В модели Study Root STUDY является самым высоким уровнем.Поэтому запросы на уровне ПАЦИЕНТА не применимы.

Следующие цитаты взяты из спецификаций - DICOM Часть 4 (Спецификации класса обслуживания), Глава C.4.1.2.1 Базовое поведение SCU:

Идентификатор, содержащийся в запросе C-FIND, должен содержать одно значение в Атрибуте уникального ключа для каждого уровня выше уровня Запрос / Извлечение.Не должны быть указаны обязательные или дополнительные ключи, связанные с уровнями выше уровня Query / Retrieve.

Это означает, что при запросе к следующему уровню SCU должен указывать идентификатор своего более раннего уровня.В запросе «Уровень изучения корня пациента» необходимо указать идентификатор пациента.В запросе Study Root STUDY Level нет уровня выше .Таким образом, SCU может фильтровать без указания идентификатора пациента.

Атрибут уникального ключа, связанный с уровнем Query / Retrieve, должен содержаться в запросе C-FIND и может указывать сопоставление одного значения, сопоставление универсального значения,или Список соответствия UID.

В ответах на вышеуказанный запрос SCU уже получил идентификаторы для этого уровня.Они должны быть включены в запрос.Выполняя запросы на уровне SERIES, укажите UID экземпляра исследования, полученный в предыдущих ответах.

Кроме того, в Идентификаторе могут содержаться Обязательные и Необязательные ключи, связанные с уровнем Query / Retrieve.

Дополнительные параметры также могут быть включены в запрос.

О дополнительных параметрах:

  • SCU не может предполагать, что SCP поддерживает какие-либо дополнительные ключи.Следовательно, дополнительные ключи служат только для уменьшения нагрузки, связанной с сетью, когда они поддерживаются SCP.

  • SCU должен быть готов фильтровать ответы C-FIND, когда SCP не может поддерживать дополнительныйКлюч, указанный в запросе C-FIND.

SCP должен поддерживать фильтрацию по идентификатору на соответствующем уровне - это обязательно.SCP может дополнительно поддерживать фильтрацию и по другим необязательным параметрам;но SCU не должен ретранслировать его.

Теперь, отвечая на ваш комментарий:

Означает ли это, что я даже не могу выполнить запрос уровня STUDY без идентификатора пациента?Что делать, если у меня есть только идентификационный номер исследования / номер доступа

При запросе «Корень пациента» в этом случае связь с SCP, строго соблюдающим спецификации, будет прервана.С Study Root STUDY - высший уровень.Ваши фильтры должны работать, если они поддерживаются SCP.

На практике большинство SCP являются либеральными.Номер доступа и идентификатор пациента являются широко используемыми фильтрами на уровне STUDY.

2 голосов
/ 03 апреля 2019

Это указано в DICOM Часть 4 (Спецификации класса обслуживания), Глава C.4.1.2.1 Базовое поведение SCU:

Идентификатор, содержащийся в запросе C-FIND, должен содержать одно значение в Атрибуте уникального ключа для каждого уровня выше уровня Запрос / Извлечение. Не должны быть указаны обязательные или дополнительные ключи, связанные с уровнями выше уровня Query / Retrieve.

...