ນີ້ແມ່ນຄໍາສັ່ງ gdcmscu ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
gdcmscu - ເຄື່ອງມືທີ່ຈະດໍາເນີນການ DICOM Query/retrieve ການດໍາເນີນງານ
ສະຫຼຸບສັງລວມ
gdcmscu [OPTION]...[OPERATION]...HOSTNAME...[PORT]...
ດໍາເນີນການ DICOM Q/R ກັບ HOSTNAME, ໂດຍໃຊ້ພອດ PORT (104 ເມື່ອບໍ່ໄດ້ລະບຸ)
ລາຍລະອຽດ
ໄດ້ gdcmscu ໂຄງການເສັ້ນຄໍາສັ່ງແມ່ນເຄື່ອງມືທີ່ຈະປະຕິບັດການ DICOM Query/Retrieve ການດໍາເນີນງານ. ມັນ
ສະຫນັບສະຫນູນ:
· C-ECHO (SCU)
· C-FiND (SCU)
· C-STORE (SCU)
· ການດໍາເນີນງານ C-MOVE (SCU/SCP) C-MOVE ຖືກປະຕິບັດໂດຍໃຊ້ສອງພອດທີ່ແຕກຕ່າງກັນ (ຫນຶ່ງສໍາລັບການ
SCU ແລະຫນຶ່ງສໍາລັບ SCP).
PARAMETERS
OPTIONS
ສະເພາະ ທາງເລືອກໃນການ
-H --hostname %s ຊື່ເຈົ້າພາບ.
-p --port %d ໝາຍເລກຜອດ.
--aetitle %s ຕັ້ງການເອີ້ນຊື່ AE.
--call %s ຕັ້ງຊື່ AE Title.
ຮູບແບບການ ທາງເລືອກໃນການ
--echo C-ECHO (ຄ່າເລີ່ມຕົ້ນເມື່ອບໍ່ມີ).
--ຮ້ານ C-STORE.
--ຊອກຫາ C-FIND.
--ຍ້າຍ C-MOVE.
C-STORE ທາງເລືອກໃນການ
-i --ປ້ອນຊື່ໄຟລ໌ %s DICOM
-r --recursive recursively process (sub-)directories
--store-query %s ເກັບຮັກສາແບບສອບຖາມທີ່ສ້າງຂຶ້ນໃນໄຟລ໌
C-FIND/C-MOVE ທາງເລືອກໃນການ
--patientroot C-FIND ແບບຈໍາລອງຮາກຄົນເຈັບ.
--studyroot C-FIND Study Root Model.
--patient C-FIND Query ກ່ຽວກັບຂໍ້ມູນຄົນເຈັບ (ບໍ່ສາມາດໃຊ້ກັບ --studyroot).
--study C-FIND Query ກ່ຽວກັບຂໍ້ມູນການສຶກສາ.
--series C-FIND Query on Series Info.
--image C-FIND Query ກ່ຽວກັບຂໍ້ມູນຮູບພາບ.
--key %d,%d[=%s] 0123,4567=VALUE ສໍາລັບການລະບຸເງື່ອນໄຂການຊອກຫາ (ອະນຸຍາດໃຫ້ໃຊ້ບັດແທນ)
ດ້ວຍ --key, ປ່ອຍໃຫ້ຫວ່າງ (ເຊັ່ນ, --key 10,20="" ຫຼື --key 10,20) ເພື່ອດຶງຄ່າ
C-MOVE ທາງເລືອກໃນການ
-o --output %s DICOM filename / directory
--port-scp %d ພອດສໍາລັບສະມາຄົມຂາເຂົ້າ
--key %d,%d[=%s 0123,4567=VALUE ສໍາລັບການລະບຸເງື່ອນໄຂການຊອກຫາ (ບໍ່ອະນຸຍາດໃຫ້ໃຊ້ wildcard)
ກະລຸນາຮັບຊາບວ່າ C-MOVE ຮອງຮັບການສອບຖາມແບບດຽວກັນກັບ C-FIND, ແຕ່ບໍ່ມີສັນຍາລັກແທນທີ່ອະນຸຍາດ
ໂດຍທົ່ວໄປ ທາງເລືອກໃນການ
-h --help
ພິມຂໍ້ຄວາມຊ່ວຍເຫຼືອນີ້ ແລະອອກ
-v --ເວີຊັ່ນ
ພິມຂໍ້ມູນສະບັບແລະອອກ
-V --verbose
ຮູບແບບ verbose (ເຕືອນ+ຄວາມຜິດພາດ).
-W --ເຕືອນ
ຮູບແບບການເຕືອນໄພ, ພິມຂໍ້ມູນການເຕືອນໄພ
-E - ຄວາມຜິດພາດ
ຮູບແບບຄວາມຜິດພາດ, ຂໍ້ມູນຄວາມຜິດພາດການພິມ
-D --debug
ໂໝດດີບັກ, ພິມຂໍ້ມູນດີບັກ
-L --log-file
ລະບຸຊື່ໄຟລ໌ທີ່ຈະຂຽນບັນທຶກ
-- ສອບຖາມຄວາມຊ່ວຍເຫຼືອ
ພິມແບບສອບຖາມຊ່ວຍ
ສະພາບແວດລ້ອມ ຕົວແປ
GDCM_ROOT_UID Root UID
C-ECHO ການນໍາໃຊ້
gdcmscu ເປັນເຄື່ອງມືທີ່ດີທີ່ຈະທົດສອບວ່າເຄື່ອງແມ່ຂ່າຍ DICOM ແມ່ນຂຶ້ນຫຼືບໍ່. ຕົວຢ່າງເພື່ອສົ່ງ C-ECHO ໄປຫາ
ເຊີບເວີ dicom.example.com ໂດຍໃຊ້ພອດ 104, ໃຊ້:
$ gdcmscu dicom.example.com
ຫຼື ຖ້າເຈົ້າຕ້ອງການໃຫ້ຈະແຈ້ງ:
$ gdcmscu --echo dicom.example.com 104
ການໃຊ້ຄວາມປອດໄພຂັ້ນພື້ນຖານເຊີບເວີ DICOM ຂອງທ່ານອາດຈະຮຽກຮ້ອງໃຫ້ທ່ານຕັ້ງຊື່ທີ່ເຫມາະສົມ
AE-TITLE
$ gdcmscu --echo dicom.example.com 11112 --call SERVSCP
ຖ້າທ່ານຕ້ອງການລະບຸ AE-TITLE ຂອງທ່ານເອງ (ຄ່າເລີ່ມຕົ້ນແມ່ນ GDCMSCU), ພຽງແຕ່ໃຊ້:
$ gdcmscu --echo dicom.example.com 11112 --call SERVSCP --aetitle MYSCU
ຕົວຢ່າງທ່ານສາມາດທົດສອບໃນເຊີບເວີ DICOM ທີ່ສະໜອງໃຫ້ໂດຍທີມງານ DICOMObject:
$ gdcmscu www.dicomserver.co.uk 11112
C-STORE ການນໍາໃຊ້
C-STORE ແມ່ນການດໍາເນີນງານທີ່ອະນຸຍາດໃຫ້ສົ່ງໄຟລ໌ DICOM ໄປຫາເຄື່ອງແມ່ຂ່າຍ DICOM ຫ່າງໄກສອກຫຼີກ. ສໍາລັບ
ຕົວຢ່າງເພື່ອສົ່ງໄຟລ໌ທີ່ເອີ້ນວ່າ myfile.dcm
$ gdcmscu --store dicom.example.com 104 myfile.dcm
ຫຼື ຖ້າເຈົ້າຕ້ອງການໃຫ້ຈະແຈ້ງ:
$ gdcmscu --store dicom.example.com 104 -i myfile.dcm
ທ່ານຍັງສາມາດສົ່ງຫຼາຍໄຟລ໌ໂດຍໃຊ້ການເຊື່ອມໂຍງດຽວກັນ:
$ gdcmscu --store dicom.example.com 104 myfile1.dcm myfile2.dcm myfile3.dcm ...
C-ຊອກຫາ ການນໍາໃຊ້
gdcmscu ຍັງອະນຸຍາດໃຫ້ສອບຖາມເຊີບເວີ DICOM. ນີ້ແມ່ນການປະຕິບັດ C-FIND, ສໍາລັບການຍົກຕົວຢ່າງ
ຊອກຫາຕົວຢ່າງ DICOM ທັງໝົດທີ່ PatientsName ກົງກັບຮູບແບບສະເພາະ, ການນຳໃຊ້ແມ່ນງ່າຍດາຍ:
$ gdcmscu --find --patient dicom.example.com 11112 --patientroot --key 10,10,"A*"
ພວກເຮົາຍັງສະຫນັບສະຫນູນສົນທິສັນຍາທີ່ເຂົ້າກັນໄດ້ DCMTK:
$ gdcmscu --find --patient dicom.example.com 11112 --patientroot --key 10,10="A*"
ເມື່ອຄຸນລັກສະນະຖືກຕັ້ງໂດຍບໍ່ມີຄ່າ, ມັນຈະເປັນສ່ວນຫນຶ່ງຂອງຜົນໄດ້ຮັບ:
$ gdcmscu --find --patient dicom.example.com 11112 --call MI2B2 --patientroot -k 10,10="A*" -k 10,20
C-MOVE ການນໍາໃຊ້
C-MOVE ແມ່ນການປະຕິບັດການດຶງເອົາຕົວຢ່າງ DICOM ຈາກເຊີບເວີ DICOM ໄລຍະໄກ. ສ່ວນໃຫຍ່
ເວລາ, ມັນແມ່ນການດໍາເນີນການຕໍ່ໄປຫຼັງຈາກການສອບຖາມ C-FIND. ເພື່ອດຶງເອົາຕົວຢ່າງ DICOM
ບ່ອນທີ່ PatientID ແມ່ນ ABCD1234, ພຽງແຕ່ປະຕິບັດ:
$ gdcmscu --move --patient --aetitle ACME1 --call ACME_STORE dicom.example.com 5678 --patientroot -k 10,20="ABCD1234" --port-scp 1234
ຄໍາເຕືອນເພື່ອໃຫ້ການປະຕິບັດງານນີ້ເຮັດວຽກທ່ານຕ້ອງການຂໍ້ມູນຈາກເຄື່ອງແມ່ຂ່າຍ DICOM ທີ່ທ່ານຢູ່
ຕິດຕໍ່ພົວພັນກັບ. ມີພຽງແຕ່ເຊີບເວີ DICOM ທີ່ທ່ານກໍາລັງສົ່ງຄໍາຖາມ C-MOVE ເທົ່ານັ້ນ
ຮັບຜິດຊອບໃນການສົ່ງຄືນສະມາຄົມທີ່ເຂົ້າມາ (ຕົວຈິງຂອງ C-STORE SCP). ເພາະສະນັ້ນເຈົ້າ
ຕ້ອງການໃຫ້ແນ່ໃຈວ່າທ່ານສ້າງແຜນທີ່ (AE-TITLE,PortNumber) ຖືກຕັ້ງຢ່າງຖືກຕ້ອງຢູ່ໃນ DICOM
ຂ້າງເຊີບເວີເຊັ່ນດຽວກັນກັບພອດສໍາລັບການເຊື່ອມໂຍງຂາເຂົ້າ (–port-scp).
gdcmscu ປະຈຸບັນບໍ່ຮອງຮັບການເຊື່ອມໂຍງ C-STORE ພາຍນອກ (ຄໍາຮ້ອງຂໍ C-STORE ຖືກສົ່ງໄປຫາ
ຄໍາຮ້ອງສະຫມັກ SCP ພາຍນອກ).
PATIENTROOT ຫມາຍເຫດ
ທຸງ –patientroot ແມ່ນພຽງແຕ່ wrapper ປະມານ syntax –key 8,52=PATIENT ສໍາລັບ
ຕົວຢ່າງຫນຶ່ງຈະຂຽນໂດຍໃຊ້ syntax DCMTK:
$ findscu --patient dicom.example.com 11112 --key 8,52=PATIENT --key 10,10="F*"
ອັນນີ້ຈະກາຍເປັນການໃຊ້ syntax GDCM:
$ gdcmscu --find --patient dicom.example.com 11112 --patientroot --key 10,10="F*"
ກຳ ລັງດີບັກ
ນີ້ແມ່ນບາງຄັ້ງຍາກທີ່ຈະສືບສວນວ່າເປັນຫຍັງການເຊື່ອມຕໍ່ກັບເຄື່ອງແມ່ຂ່າຍ DICOM ຫ່າງໄກສອກຫຼີກບໍ່ສາມາດ
ເຮັດໄດ້. ບາງຄໍາແນະນໍາດັ່ງຕໍ່ໄປນີ້:
ພະຍາຍາມເຮັດ C-ECHO ງ່າຍໆໃນຕອນທໍາອິດ. ຖ້າເຈົ້າບໍ່ສາມາດເອົາ C-ECHO ໄປເຮັດວຽກບໍ່ໄດ້
ການດໍາເນີນງານອື່ນໆຈະເຮັດວຽກ
ກ່ອນທີ່ຈະພະຍາຍາມດໍາເນີນການ C-MOVE, ໃຫ້ແນ່ໃຈວ່າທ່ານສາມາດດໍາເນີນການສອບຖາມທຽບເທົ່າ C-FIND.
ຄັ້ງທໍາອິດ.
ໃນເວລາທີ່ດໍາເນີນການ C-MOVE ທ່ານກໍ່ຈໍາເປັນຕ້ອງຕິດຕໍ່ສື່ສານກັບ PACS admin ເປັນ
ການປະຕິບັດ C-MOVE ແມ່ນແຕກຕ່າງຈາກການປະຕິບັດລະດັບຕ່ໍາອື່ນໆເຊັ່ນ HTTP/GET. ເມື່ອໃດ
ການເຮັດ C-MOVE, ເຊີບເວີຈະຕິດຕໍ່ສື່ສານກັບຊ່ອງທາງອື່ນ (ອາດຈະແຕກຕ່າງກັນ
port) ໂດຍໃຊ້ຖານຂໍ້ມູນພາຍໃນຂອງມັນເພື່ອສ້າງແຜນທີ່ AE-TITLE ກັບໄປທີ່ IP ປາຍທາງ.
ແທ້ຈິງແລ້ວ, ການປະຕິບັດ C-MOVE ໂດຍການອອກແບບບໍ່ໄດ້ໃຊ້ທີ່ຢູ່ IP ທີ່ເຂົ້າມາຂອງທ່ານເພື່ອສົ່ງ
ກັບຄືນຊຸດຂໍ້ມູນຜົນໄດ້ຮັບ. ແທນທີ່ຈະ, ມັນໃຊ້ແຜນທີ່ຂອງ AE-TITLE ກັບທີ່ຢູ່ IP ເພື່ອສົ່ງ
ກັບຜົນໄດ້ຮັບໃດໆ. ສະນັ້ນໃຫ້ເອົາໃຈໃສ່ເປັນພິເສດຕໍ່ການສະກົດຄຳຂອງ AE-TITLE ແລະຂອງເຈົ້າ
ພອດຂາເຂົ້າ (ເຊິ່ງອາດຈະແຕກຕ່າງຈາກພອດເພື່ອເຊື່ອມຕໍ່ກັບເຄື່ອງແມ່ຂ່າຍ).
PORT ຄໍາເຕືອນ
ຈົ່ງສັງເກດເບິ່ງວ່າພອດທີ່ມີຂອບເຂດ [1-1024] ຖືກສະຫງວນໄວ້ສໍາລັບຜູ້ເບິ່ງແຍງແລະບໍ່ສາມາດເຂົ້າເຖິງໄດ້ງ່າຍ
ເວັ້ນເສຍແຕ່ໄດ້ຮັບສິດທິພິເສດ. ດັ່ງນັ້ນພອດ 104 DICOM ເລີ່ມຕົ້ນອາດຈະບໍ່ແມ່ນ
ສາມາດເຂົ້າເຖິງຜູ້ໃຊ້ຂອງທ່ານທັງຫມົດ.
C-STORE ຄໍາເຕືອນ
ເມື່ອສ້າງການດຳເນີນການ C-STORE, gdcmscu ຈະໃຊ້ Media Storage SOP Class ສະເໝີ
UID ທີ່ພົບເຫັນຢູ່ໃນໄຟລ໌ທີ່ຈະສົ່ງ. ສໍາລັບໄຟລ໌ DICOM encapsulated (ຕົວຢ່າງ. RLE Lossless) ໄດ້
ການຮັບເຊີບເວີ SCP ອາດຈະບໍ່ຮອງຮັບການບີບອັດນີ້ ແລະຈະປະຕິເສດຢ່າງຖືກກົດໝາຍ
ການດໍາເນີນງານ C-STORE. ໃນກໍລະນີນີ້, ຜູ້ໃຊ້ຕ້ອງໄດ້ປ່ຽນດ້ວຍຕົນເອງເປັນແບບຟອມທີ່ບໍ່ຖືກບີບອັດ
ໄຟລ໌ສະເພາະນີ້:
$ gdcmconv --raw compressed.dcm non_compressed.dcm
C-MOVE ຄໍາເຕືອນ
ໃນຂະນະນີ້ gdcmscu ຮອງຮັບພຽງແຕ່ syntax ການໂອນຍ້າຍທີ່ບໍ່ຖືກບີບອັດເທົ່ານັ້ນ. ມັນສະເຫມີຈະຮ້ອງຂໍ
ຊຸດຂໍ້ມູນໂດຍໃຊ້ Implicit VR Little Endian Transfer Syntax ໃນລະຫວ່າງການປະຕິບັດງານ C-MOVE (ທັງສອງ.
ສະມາຄົມຂາເຂົ້າ ແລະຂາອອກ). ນີ້ເຮັດໃຫ້ gdcmscu –move ທຽບເທົ່າກັບ DCMTK movscu
ໄວຍະກອນ:
$ movescu -xi +xi ...
C-ຊອກຫາ ຮູບພາບ LEVEL (ອົງປະກອບ ເປົ້າ ໝາຍ INSTANCE)
ຄົນເຮົາຄວນເອົາໃຈໃສ່ວ່າ gdcmscu –find ແລະ findscu ບໍ່ທຽບເທົ່າ.
ການນໍາໃຊ້ gdcmscu –find, ທຸກໆກະແຈທີ່ເປັນເອກະລັກຈະຖືກເພີ່ມໂດຍອັດຕະໂນມັດ. ດັ່ງນັ້ນຫນຶ່ງສາມາດ
ປະຕິບັດບາງສິ່ງບາງຢ່າງເຊັ່ນນີ້:
$ gdcmscu --find --patientroot --image --key 8,18=1.2.3.4.5.6 dicom.example.com 11112
ແທນທີ່ຈະເປັນຮູບແບບທີ່ຊັດເຈນກວ່າ
$ gdcmscu --find --patientroot --image --key 8,18=1.2.3.4.5.6 dicom.example.com 11112 --key 10,20 --key 20,d --key 20,e
ອັນນີ້ຍັງຈະທຽບເທົ່າກັບ:
$ findscu --patient --key 8,52=IMAGE --key 8,18=1.2.3.4.5.6 dicom.example.com 11112 --key 10,20 --key 20,d --key 20,e
ການຕັກເຕືອນ ການ ສອບຖາມ
ມັນຍັງສາມາດເກັບຮັກສາຄໍາຖາມໄດ້:
gdcmscu --find --patient --patientroot dicom.example.com 11112 --key 10,20="*" --key 10,10 --store-query query.dcm
ຫຼັງຈາກນັ້ນ, ຫນຶ່ງສາມາດກວດສອບຄ່າ DataSet ທີ່ສົ່ງສໍາລັບການສອບຖາມ:
$ gdcmdump query.dcm
# Dicom-File-format
# Dicom-Meta-Information-Header
# ໃຊ້ TransferSyntax:
# Dicom-Data-Set
# Used TransferSyntax: 1.2.840.10008.1.2
(0008,0005) ?? (CS) [ISO_IR 192] # 10,1-n ຊຸດຕົວລະຄອນສະເພາະ
(0008,0052) ?? (CS) [PATIENT ] #8,1 Query/Retrieve Level
(0010,0010) ?? (PN) (ບໍ່ມີຄ່າ) # 0,1 ຊື່ຄົນເຈັບ
(0010,0020) ?? (LO) [* ] #2,1 Patient ID
ຊຸດຕົວອັກສອນສະເພາະຖືກຕັ້ງເປັນ "ISO_IR 192" ເປັນການເຂົ້າລະຫັດທ້ອງຖິ່ນຂອງລະບົບ.
ໄດ້ຖືກພົບເຫັນໂດຍອັດຕະໂນມັດໂດຍ gdcmscu ເປັນ UTF-8.
ນີ້ຫມາຍຄວາມວ່າເສັ້ນຄໍາສັ່ງຕໍ່ໄປນີ້ຈະຕັ້ງຄ່າ Query ຢ່າງຖືກຕ້ອງ
Charset ທີ່ເຫມາະສົມທີ່ຈະປະຕິບັດຢ່າງຖືກຕ້ອງ:
$ gdcmscu --find --patient --patientroot dicom.example.com 11112 --key 10,10="*Jérôme*"
ການສອບຖາມແມ່ນຖືກປະຕິບັດຢູ່ຂ້າງເຊີຟເວີ (SCP), ບາງການປະຕິບັດບໍ່ໄດ້
ສະຫນັບສະຫນູນການຈັບຄູ່ສະຕຣິງກັບຊຸດຕົວອັກສອນທີ່ແຕກຕ່າງກັນ.
DICOM ສາທາລະນະລັດ SERVERS
ບັນຊີລາຍຊື່ຫຼ້າສຸດຂອງເຄື່ອງແມ່ຂ່າຍສາທາລະນະ DICOM ສາມາດພົບໄດ້ທີ່:
http://www.dclunie.com/medical-image-faq/html/part8.html#DICOMPublicServers
ໃຊ້ gdcmscu ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net