Я отладил вашу проблему с SendSCU.
Я получил изображение со сжатием JPEG 2000 Lossy.Я установил с ним соединение с моим SCP и отправил изображение.
Ниже приведен журнал Associate:
Implementation Version: CharruaSoft
Maximum PDU Size: 16384
Called AE Title: remote
Calling AE Title: local
Presentation Contexts: 1
Presentation Context: 1 [Proposed]
Abstract: CT Image Storage
Transfer: Explicit VR Little Endian
Transfer: JPEG 2000 Image Compression
Transfer: Implicit VR Little Endian: Default Transfer Syntax for DICOM
Обратите внимание, что SendSCU предлагает только один контекст представления (ПК) с тремя передачамиСинтаксисы в нем.Теперь дело за SCP, какой TS принятьХорошо, что SCU автоматически определяет исходный TS изображения для отправки.
для 8-битного простого файла размером 2 МБ генерирует огромный файл размером 90 МБ.
Это потому, что ваш SCP принимает первый синтаксис передачи и отправляет ASSOCIATE-ACCEPT
обратно в SendSCU.Затем SendSCU (как и ожидалось) распаковывает изображение на лету и, следовательно, увеличивает его размер.
Я попытался отправить с помощью StoreSCU из самого dcm4che, и он отлично работает.
Я уверен, что StoreSCU должен предложить:
- только один TS - один с потерями ИЛИ
- несколько TS каждый на отдельном ПК.SCP принимает каждый ПК.StoreSCU использует лучший - Lossy ИЛИ
- несколько TS с Lossy TS в верхней части
В любом из вышеперечисленных случаев StoreSCU не будет распаковывать изображение и не будетразмер вопроса.Возможно, вы должны получить для него журнал, аналогичный описанному выше.
CharruaSoft SendSCU может отправлять сообщения другим SCP, например, для: mymedicalimages.com должным образом.
Itэто решение SCP, какой TS принять, если на одном ПК предлагается несколько TS.Поскольку упомянутый вами SCP размещен в Интернете, он, скорее всего, принимает Lossy TS (для повышения производительности и экономии пропускной способности) по приоритету и, следовательно, размер получаемого файла невелик.Вы должны проверить их заявление о соответствии.Если вы загрузите его здесь, я могу немного помочь.
Если я выберу 8-битное сжатие JPEG с потерями в CharruaSoft sendcu, оно работает и не создает огромный файл размером 90 МБ.
Ниже приведен журнал Associate в этом случае:
Implementation Version: CharruaSoft
Maximum PDU Size: 16384
Called AE Title: remote
Calling AE Title: local
Presentation Contexts: 1
Presentation Context: 1 [Proposed]
Abstract: CT Image Storage
Transfer: JPEG 2000 Image Compression
Transfer: Implicit VR Little Endian: Default Transfer Syntax for DICOM
Обратите внимание, что JPEG 2000 является первым TS, предложенным здесь.SCP принимает это, и все просто отлично работает.
Но я не контролирую инструмент CharSCaSoft sendSCU.Я хочу, чтобы java dcm4che SCP справился с этим.
Я никогда не использовал инструмент dcm4che;Я не могу помочь здесь.Вы можете проверить документ dcm4che, чтобы увидеть, как вы можете настроить, какой TS принимать, который предлагается на ПК.Надеемся, что есть настройка / переключатель для управления этим поведением.Это ваш единственный путь, если вы хотите работать с SCP на лету.
Другой альтернативой является автономное преобразование TS с переключателем -t
, как объяснено здесь .
-t,--transfer-syntax <uid>
перекодировать источники в указанный синтаксис передачи.По умолчанию используется Explicit VR Little Endian