| img2dcm(1) | OFFIS DCMTK | img2dcm(1) |
نام (NAME)
img2dcm - تبدیل فرمتهای استاندارد تصویر به فرمت دایکام (DICOM)
خلاصه دستور (SYNOPSIS)
img2dcm [گزینهها] imgfile-in... dcmfile-out
توضیحات (DESCRIPTION)
ابزار img2dcm به عنوان یک ابزار تبدیل از یک قالب تصویر استاندارد مانند JPEG (از جمله JPEG-LS) یا BMP به دایکام (DICOM) عمل میکند. کلاسهای SOP خروجی متفاوتی را میتوان انتخاب کرد. اطلاعات تکمیلی (مربوط به بیماران، مجموعهها و غیره) ذخیرهشده در فایل خروجی دایکام را میتوان از سایر فایلهای دایکام که به عنوان "الگو" (template) برای شیء دایکام حاصل عمل میکنند استخراج نمود. img2dcm همچنین میتواند برای ایجاد صفات گمشده نوع ۱ و نوع ۲ دایکام پیکربندی شود تا حتی بدون هیچ مجموعه داده الگویی کار کند.
پارامترها (PARAMETERS)
imgfile-in نام فایل تصویر ورودی
dcmfile-out نام فایل دایکام خروجی ("-" برای stdout)
گزینهها (OPTIONS)
گزینههای عمومی (general options)
-h --help
چاپ این متن راهنما و خروج
--version
چاپ اطلاعات نسخه و خروج
--arguments
چاپ آرگومانهای بسطیافته خط فرمان
-q --quiet
حالت خاموش، عدم چاپ هشدارها و خطاها
-v --verbose
حالت پرگویی، چاپ جزئیات پردازش
-d --debug
حالت اشکالزدایی، چاپ اطلاعات دیباگ
-ll --log-level [l]evel: string constant
(fatal, error, warn, info, debug, trace)
استفاده از سطح l برای ثبتکننده لاگ
-lc --log-config [f]ilename: string
استفاده از فایل پیکربندی f برای لاگر
گزینههای ورودی (input options)
عمومی:
-i --input-format [i]nput file format: string
فرمتهای پشتیبانیشده: JPEG (پیشفرض)، BMP
-df --dataset-from [f]ilename: string
استفاده از مجموعه داده از فایل دایکام f
-dx --dataset-from-xml [f]ilename: string
استفاده از مجموعه داده از فایل XML f
-stf --study-from [f]ilename: string
خواندن بیمار/مطالعه از فایل دایکام f
-sef --series-from [f]ilename: string
خواندن بیمار/مطالعه/سری از فایل دایکام f
-ii --instance-inc
افزایش شماره نمونه (instance) خواندهشده از فایل دایکام
فرمت JPEG:
-dp --disable-progr
غیرفعال کردن پشتیبانی از JPEG تدریجی (progressive)
-de --disable-ext
غیرفعال کردن پشتیبانی از JPEG متوالی گسترشیافته (extended sequential)
-jf --insist-on-jfif
اصرار بر وجود هدر JFIF
-ka --keep-appn
نگهداشتن بخشهای APPn (به جز JFIF)
-rc --remove-com
حذف قطعه COM
اعتبارسنجی XML:
+Vd --validate-document
اعتبارسنجی سند XML در برابر DTD
+Vn --check-namespace
بررسی فضاینام XML در ریشه سند
گزینههای پردازش (processing options)
بررسی ویژگیها (attributes):
--do-checks
فعال کردن بررسی اعتبار ویژگیها (پیشفرض)
--no-checks
غیرفعال کردن بررسی اعتبار ویژگیها
+i2 --insert-type2
درج ویژگیهای گمشده نوع ۲ (پیشفرض)
(فقط با --do-checks)
-i2 --no-type2-insert
عدم درج ویژگیهای گمشده نوع ۲
(فقط با --do-checks)
+i1 --invent-type1
ابداع ویژگیهای گمشده نوع ۱ (پیشفرض)
(فقط با --do-checks)
-i1 --no-type1-invent
عدم ابداع ویژگیهای گمشده نوع ۱
(فقط با --do-checks)
تبدیل مجموعه نویسه فایل مطالعه/سری:
-Ct --transliterate
تلاش برای تقریب نویسههایی که قابل نمایش نیستند
با استفاده از نویسههای مشابه
-Cd --discard-illegal
دور ریختن نویسههایی که در مجموعه نویسه مقصد قابل نمایش نیستند
سایر گزینههای پردازش:
-k --key [k]ey: gggg,eeee="str", path or dictionary name="str"
افزودن ویژگی بیشتر
گزینههای خروجی (output options)
کلاس SOP مقصد:
-sc --sec-capture
نوشتن کلاس Secondary Capture SOP (پیشفرض)
-nsc --new-sc
نوشتن کلاسهای جدید Secondary Capture SOP
-vlp --vl-photo
نوشتن کلاس Visible Light Photographic SOP
-oph --oph-photo
نوشتن کلاسهای Ophthalmic Photography SOP
قالب فایل خروجی:
+F --write-file
نوشتن قالب فایل (پیشفرض)
-F --write-dataset
نوشتن مجموعه داده بدون اطلاعات متای فایل
کدگذاری طول گروه:
+g= --group-length-recalc
محاسبه مجدد طول گروهها در صورت وجود (پیشفرض)
+g --group-length-create
همواره با عناصر طول گروه نوشته شود
-g --group-length-remove
همواره بدون عناصر طول گروه نوشته شود
کدگذاری طول در توالیها و آیتمها:
+e --length-explicit
نوشتن با طولهای صریح (پیشفرض)
-e --length-undefined
نوشتن با طولهای تعریفنشده
فاصلهگذاری انتهایی مجموعه داده (با --write-dataset استفاده نمیشود):
-p --padding-off
بدون فاصلهگذاری (ضمنی در صورت استفاده از --write-dataset)
+p --padding-create [f]ile-pad [i]tem-pad: integer
تراز فایل روی مضربی از f بایت
و آیتمها روی مضربی از i بایت
نکات (NOTES)
منابع ویژگیها (Attribute Sources)
برای تبدیل یک فرمت تصویر عمومی به فرمت دایکام، برنامه img2dcm ممکن است ورودیهای تکمیلی برای پر کردن ویژگیهای الزامی (و اختیاری) در فایل دایکام جدید مانند اطلاعات بیمار، مطالعه و سری دریافت کند. این اطلاعات را میتوان با روشهای مختلفی جمعآوری کرد که قابلیت ترکیب داشته و به ترتیب زیر بر روی فایل حاصل اعمال میشوند:
- با استفاده از گزینه --dataset-from، برنامه img2dcm مجبور به وارد کردن ویژگیها از یک فایل دایکام موجود میشود. فایل دایکام دادهشده به طور کامل وارد شده و به عنوان مبنایی برای تمام عملیاتهای صادرات بعدی عمل میکند. به عنوان یک استثنا، SOP Instance UID با این گزینه کپی نمیشود. همچنین دادههای مربوط به تصویر مانند Rows، Columns و غیره در حین تبدیل جایگزین میشوند. توجه داشته باشید که img2dcm مقادیر سایر ویژگیها را از نظر اعتبار بررسی نمیکند، مثلاً به توالیها نگاه نمیکند تا ویژگیها را با شیء جدید تطبیق دهد (تصاویر ارجاعشده و غیره). بنابراین، توصیه میشود از الگوهای موجود در دایرکتوری دادهها برای اشیاء (قدیمی) SC و VLP استفاده کنید. همچنین بخش "الگوهای ورودی" را ببینید. به عنوان جایگزینی برای گزینه --dataset-from، میتوان از گزینه مانعةالجمع --dataset-from-xml استفاده کرد. با این حال، در این حالت، فایل باید شامل دادههای XML در قالبی باشد که توسط dcm2xml تولید میشود.
- گزینههای --study-from و --series-from میتوانند برای وارد کردن اطلاعات بیمار، مطالعه و سری از یک فایل دایکام موجود استفاده شوند. اگر --series-from مشخص شود، فایل دایکام ارائهشده توسط img2dcm باز شده و تمامی اطلاعات الزامی تا سطح سری وارد میشوند. توجه داشته باشید که این شامل اطلاعات بیمار، مطالعه و سری است. در مورد --study-from، اطلاعات سری مستثنی میشوند. استفاده از --study-from و --series-from به صورت همزمان منطقی نیست؛ اگر هر دو گزینه در خط فرمان داده شوند، گزینه سمت راست برنده میشود. ویژگیهای زیر منتقل میشوند:
سطح بیمار (Patient Level): Patient's Name Patient ID Patient's Sex Patient's Birth Date Specific Character Set سطح مطالعه (Study Level): Study Instance UID Study Date Study Time Referring Physician's Name Study ID Accession Number سطح سری (Series Level - تنها در صورت استفاده از گزینه --series-from): Series Instance UID Series Number Manufacturer
- با گزینههای --insert-type2 و --invent-type1 (هر دو به طور پیشفرض فعال هستند)، ویژگیهای مفقود (ویژگیهای نوع ۲) و/یا مقادیر مفقود ویژگیها (برای ویژگیهای نوع ۱) به طور خودکار توسط img2dcm اضافه و ابداع میشوند. لطفاً توجه داشته باشید که این گزینهها تنها در صورتی ارزیابی میشوند که گزینه --do-checks فعال باشد (پیشفرض). اگر گزینه --no-checks فعال باشد، هیچ درج خودکار ویژگیای صورت نخواهد گرفت.
- گزینه --key میتواند برای افزودن ویژگیهای بیشتر به فایل دایکام خروجی استفاده شود. همچنین میتوان توالیها، آیتمها و ویژگیهای تودرتو را با استفاده از گزینه --key مشخص کرد. در این موارد، باید از یک نشانهگذاری "مسیر" خاص استفاده شود. جزئیات این نشانهگذاری مسیر را میتوان در مستندات dcmodify یافت. گزینه --key میتواند بیش از یک بار مشخص شود. بخش مقدار (بعد از '=') ممکن است خالی باشد که باعث میشود ویژگی با طول صفر تنظیم شود. لطفاً توجه داشته باشید که گزینه --key در پایانترین مرحله، دقیقاً پیش از ذخیره فایل دایکام اعمال میشود، بنابراین هیچگونه بررسی مقداری صورت نمیگیرد.
شناسههای یکتا (UIDs)
شناسههای Instance UID جدید برای Study و Series در صورت نیاز پس از اعمال گزینههای --study-from و --series-from تولید میشوند. اگر Study Instance UID یا Series Instance UID پس از این مراحل وجود نداشته باشند، مستقل از یکدیگر به صورت جدید تولید خواهند شد.
رفتاری معکوس برای SOP Instance UID انتخاب شده است که شاید انتظار برود هنگام استفاده از گزینه --dataset-from یا --dataset-from-xml منتقل شود. اینگونه نیست؛ SOP Instance UID به شیء جدید کپی نمیشود. این رفتار برای اکثر موارد مطلوب خواهد بود. با این حال، اگر باید یک SOP Instance UID خاص در شیء جدید قرار داده شود، باید از گزینه --key استفاده شود.
الگوهای ورودی (Input Templates)
برای پشتیبانی از تبدیل به دایکام، ابزار img2dcm همراه با الگوهای از پیش تعریفشدهای ارائه میشود که میتوانند برای گزینه --dataset-from استفاده شوند (فایلهای نمونه SC.dump و VLP.dump را ببینید). این الگوها باید با مقادیر مورد نظر پر شوند و سپس پیش از استفاده واقعی با img2dcm به یک فایل دایکام تبدیل (dump) شوند. برای تبدیل دامپ به دایکام از dump2dcm استفاده کنید. مثال:
dump2dcm SC.dump SC.dcm
برای تصاویر Ophthalmic Photography، الگوهای XML ارائه شدهاند (فایل نمونه OP_template_utf_8.xml و OP_template_latin_1.xml را ببینید).
امکان استفاده از هر فایل دایکامی به عنوان الگو وجود دارد. لطفاً توجه داشته باشید که کل مجموعه داده دایکام وارد میشود؛ بنابراین باید اطمینان حاصل شود که تنها ویژگیهایی وجود دارند که باید بخشی از شیء دایکام ساختهشده باشند. ویژگیهای SOP Class UID و Pixel Data (شامل ویژگیهایی چون Rows، Columns و غیره) کپی نمیشوند بلکه در طول تبدیل توسط img2dcm جایگزین میگردند.
تصاویر چندفریمی (Multiframe Images)
در صورتی که کلاس SOP دایکام انتخابی از چندفریم پشتیبانی کند، تبدیل چندین فایل ورودی به یک تصویر چندفریمی دایکام امکانپذیر است. به ویژه کلاسهای Multi-frame Secondary Capture SOP از این ویژگی پشتیبانی میکنند. آنها از طریق گزینه خط فرمان --new-sc انتخاب میشوند.
مجموعه نویسهها (Character Sets)
هنگامی که یک الگوی ورودی با استفاده از --dataset-from یا --dataset-from-xml بارگذاری میشود، مجموعه نویسه خاص آن الگو برای فایل دایکام تولیدشده استفاده میشود. اگر گزینههای --study-from یا --series-from نیز علاوه بر آن استفاده شوند، img2dcm تلاش خواهد کرد تا مجموعه نویسه این ویژگیها را به مجموعه نویسه الگو تبدیل کند، و در صورت عدم امکان خطا گزارش خواهد داد.
اگر گزینههای --study-from یا --series-from بدون الگو استفاده شوند، مجموعه نویسه خاص این مبدا برای فایل دایکام تولیدشده به کار میرود. هر کلیدی که با گزینه --key در خط فرمان مشخص شود به عنوان بایتهای خام در نظر گرفته میشود و هر ویژگیای را که ممکن است به دلیل وجود یک الگو یا فایل مطالعه/سری حاضر باشد، بازنویسی میکند. بنابراین، باید دقت شود که در صورت امکان بارگذاری از فایلی دیگر، مجموعه نویسه خاصی در خط فرمان تعیین نگردد. همچنین این مسئولیت کاربر است که اطمینان حاصل کند مقادیر ویژگیهای مشخصشده در خط فرمان از کدگذاری صحیحی استفاده میکنند، زیرا پیش از ذخیره مقادیر در فایل دایکام هیچ تبدیلی صورت نخواهد گرفت.
پلاگینهای ورودی (Input Plugins)
برنامه img2dcm در حال حاضر از قالبهای تصویری JPEG، JPEG-LS و BMP به عنوان ورودی پشتیبانی میکند.
پلاگین ورودی JPEG (JPEG Input Plugin)
برای JPEG، تصویر JPEG اصلی از فایل مبدا رمزگشایی نمیشود بلکه استخراج شده و اندکی تغییر شکل مییابد (مثلاً هدر JFIF جدا میشود) تا امکان تبدیل سریع حتی فایلهای حجیم JPEG بدون نیاز به رمزگشایی و فشردهسازی مجدد فراهم گردد. پلاگین JPEG سینتکس انتقال خروجی لازم را بسته به کدگذاری واقعی دادهها در فایل JPEG به طور خودکار انتخاب میکند. از این رو، سینتکسهای انتقال زیر (و کدگذاریهای متناظر JPEG آنها) توسط پلاگین JPEG استفاده میشوند:
- فرآیند
کدگذاری ۱
در JPEG (JPEG Coding Process 1)
Baseline, Lossy, Non-Hierarchical, Sequential, DCT, Huffman, 8 Bit
Transfer Syntax UID = 1.2.840.10008.1.2.4.50 - فرآیند
کدگذاری ۲
(۸ بیتی) و ۴
(۱۲ بیتی) در JPEG
Extended, Lossy, Non-Hierarchical, Sequential, DCT, Huffman, 8/12 Bit
Transfer Syntax UID = 1.2.840.10008.1.2.4.51 - فرآیند
کدگذاری ۱۰
(۸ بیتی) و ۱۲
(۱۲ بیتی) در JPEG
Full Progression, lossy, Non-Hierarch., Progressive, DCT, Huffman, 8/12 Bit
Transfer Syntax UID = 1.2.840.10008.1.2.4.55
تصاویر رنگی و مقیاس خاکستری (grayscale) پشتیبانی میشوند.
پشتیبانی از سینتکس انتقال Extended JPEG را میتوان غیرفعال کرد (گزینه --disable-ext) و همچنین پشتیبانی از سینتکس انتقال منسوخشده Progressive JPEG را (گزینه --disable-progr).
کدگذاری بدون افت JPEG و همچنین حالتهای کدگذاری محاسباتی یا سلسلهمراتبی JPEG توسط این پلاگین پشتیبانی نمیشوند.
اطلاعات JFIF (قالب تبادل فایل JPEG) نشانگرهای اختیاری APPn را در فایل JPEG تسهیل میکند. بسیاری از دوربینهای دیجیتال چنین اطلاعات JFIFای را در خروجی JPEG تولیدی خود ادغام نمیکنند. به عنوان مثال، JFIF شامل اطلاعاتی درباره نسبت ابعاد پیکسل تصویر فشردهشده است. اگر میخواهید برنامه img2dcm بر وجود هدر JFIF در جریان JPEG اصرار ورزد، میتوانید از گزینه --insist-on-jfif استفاده کنید که در صورت عدم یافتن اطلاعات JFIF اجرا را متوقف خواهد کرد. بهطور پیشفرض، نبود اطلاعات JFIF نادیده گرفته میشود.
برای دایکام نوعی "منطقه خاکستری" است که آیا ادغام دادههای JFIF (یا هر APPn دیگری) در جریان JPEG داخلی شیء دایکام مجاز است یا خیر. با این حال، مطمئنترین رویکرد، جدا کردن این نشانگرها و اطلاعات آنها از جریان JPEG است. این رویکرد توسط برنامه img2dcm نیز اتخاذ شده است. بهطور پیشفرض، تمامی نشانگرهای APPn از جریان اصلی JPEG جدا میشوند. با این حال، اگر میخواهید نشانگرهای APPn دیگری غیر از JFIF (مانند اطلاعات EXIF) را در جریان دایکام نگه دارید، گزینه --keep-appn این کار را انجام میدهد. این گزینه همچنین باید کمی سریعتر از حذف اطلاعات APPn باشد، زیرا نیازی به اسکن کل جریان JPEG برای یافتن چنین دادههایی نیست. همانطور که پیشتر ذکر شد، اطلاعات JFIF همواره توسط img2dcm حذف میشوند. با این حال، هنگام استفاده از این گزینه، نشانگر APP2 حفظ میشود، اما img2dcm ویژگی معادل ICC Profile (0028,2000) را ایجاد نمیکند.
پلاگین ورودی JPEG-LS (JPEG-LS Input Plugin)
پلاگین JPEG-LS مستقیماً در پلاگین اصلی JPEG ادغام شده است. نیازی نیست کاربر از قبل صراحتاً مشخص کند که ورودی JPEG است یا JPEG-LS.
برای JPEG-LS، تصویر اصلی JPEG-LS از فایل منبع رمزگشایی نمیشود بلکه استخراج شده و اندکی تغییر شکل مییابد (مثلاً نشانگر APP8 حذف میشود) تا تبدیل سریع حتی فایلهای حجیم JPEG-LS بدون نیاز به رمزگشایی و کدگذاری مجدد میسر شود.
پلاگین JPEG-LS سینتکس انتقال خروجی لازم را بسته به کدگذاری واقعی دادهها در فایل JPEG-LS به طور خودکار انتخاب میکند. بنابراین، سینتکسهای انتقال زیر (و کدگذاریهای متناظر JPEG-LS آنها) توسط پلاگین JPEG-LS استفاده میشوند:
- فشردهسازی
تصویر بدون
افت JPEG-LS (Lossless)
Transfer Syntax UID = 1.2.840.10008.1.2.4.80 - فشردهسازی
تصویر
دارای افت
(نزدیک به
بدون افت) JPEG-LS
Transfer Syntax UID = 1.2.840.10008.1.2.4.81
تصاویر رنگی و در مقیاس خاکستری پشتیبانی میشوند. استاندارد CP-1843 الزام میکند که مقدار Planar Configuration (0028,0006) بیاهمیت است چرا که شیوه کدگذاری مؤلفهها در جریان بیتی JPEG-LS به صورت درهمتنیده مؤلفهای، خطی یا نمونهای مشخص شده است، بنابراین باید روی ۰ تنظیم شود. از آنجا که در حال حاضر هیچ تبدیل رنگی خاصی برای JPEG-LS در دایکام تعریف نشده است، فرض میشود جریان JPEG-LS در فضای رنگی RGB کدگذاری شده است.
برای دایکام مشخص است که هدر SPIFF نباید در جریان JPEG-LS داخلی شیء دایکام حضور داشته باشد. این پلاگین هر فایل ورودی JPEG-LS حاوی هدر SPIFF در نشانگر APP8 را رد خواهد کرد.
بهطور پیشفرض، تمام نشانگرهای APPn از جریان اصلی JPEG-LS بریده میشوند. با این حال، اگر میخواهید نشانگرهای APPn (مثلاً اطلاعات تبدیل رنگ APP8/HP، مشهور به 'mrfx') را در جریان دایکام نگه دارید، گزینه --keep-appn این کار را انجام میدهد. توجه داشته باشید که پلاگین تبدیل رنگ واقعی مشخصشده در نشانگر APP8/HP را بررسی خواهد کرد. از آنجا که دایکام اجازه تعیین هیچ تبدیل رنگی در نشانگر APP8 را نمیدهد، تنها مقدار ۰ (بدون تبدیل رنگ) پذیرفته میشود.
پلاگین ورودی BMP (BMP Input Plugin)
ابزار img2dcm از BMP به عنوان فرمت ورودی پشتیبانی میکند. با این حال، تاکنون تنها رایجترین تصاویر BMP پشتیبانی میشوند. به ویژه تصاویری که از میدانهای بیتی (bit fields) یا فشردهسازی طول اجرا (RLE) استفاده میکنند رد خواهند شد. چنین تصاویری نامعمول هستند. تصاویر ورودی یا به یک تصویر دایکام با مدل رنگ RGB و عمق بیت ۲۴ تبدیل میشوند، یا به تصویری با مدل رنگ MONOCHROME2 و ۸ بیت در هر پیکسل. هیچ گزینه خاصی برای تنظیم دقیق تبدیل فرمت BMP وجود ندارد.
پلاگینهای خروجی (Output Plugins)
کلاس SOP خروجی مورد نظر را میتوان در خط فرمان انتخاب کرد. در حال حاضر، پلاگینهای صادرات برای کلاسهای زیر در دسترس هستند: Secondary Capture Image SOP Class (پیشفرض، گزینه -sc)، Multi-frame Secondary Capture Image SOP Classes (گزینه -nsc)، Visible Light Photographic Image SOP Class (گزینه -vlp)، و Ophthalmic Photography Image SOP Classes (گزینه -oph). لطفاً توجه داشته باشید که کلاس نخست بر اساس استاندارد دایکام منسوخ شده است اما به این دلیل که به طور گسترده پشتیبانی میشود به عنوان پیشفرض انتخاب شده است. نگارشهای آینده img2dcm ممکن است پلاگینهای خروجی بیشتری برای سایر کلاسهای SOP ارائه دهند.
برای کلاسهای جدید Secondary Capture SOP، مشخص کردن اینکه دقیقاً کدام کلاس SOP باید برای خروجی استفاده شود ممکن نیست. دلیل این است که این کلاسهای جدید SOP بر اساس عمق رنگ (۱/۸/۱۶) و اینکه تصویر سیاهوسفید است یا رنگی از یکدیگر متمایز میشوند. به همین دلیل است که img2dcm در طول تبدیل تصمیم میگیرد کدام کلاس SOP خروجی برای یک تصویر مبدا مناسب است.
مثالها (EXAMPLES)
در اینجا چند مثال آورده شده است که نحوه استفاده از برنامه img2dcm را نشان میدهند.
- 1.
- img2dcm image.jpg out.dcm
خواندن فایل JPEG با نام "image.jpg"، تبدیل به کلاس قدیمی Secondary Capture SOP و ذخیره نتیجه در فایل دایکام "out.dcm". این سادهترین روش استفاده از img2dcm است. هرگونه ویژگی نوع ۱ و نوع ۲ مورد نیاز برای نوشتن اشیاء معتبر این کلاس SOP به طور خودکار درج میشوند. - 2.
- img2dcm -i BMP image.bmp out.dcm
مشابه مثال بالا، اما به img2dcm میگوید که به جای JPEG یک فایل BMP را بخواند. - 3.
- img2dcm image.jpg out.dcm -vlp -k "PatientName=Bond^James"
مشابه مثال اول، اما شیء Visible Light Photographic Image را در "out.dcm" مینویسد و PatientName را روی "Bond^James" تنظیم میکند که در غیر این صورت خالی رها میشد. - 4.
- img2dcm image.jpg out.dcm --series-from template.dcm -k
"PatientName=Bond^James"
مشابه مثال ۱، اما اطلاعات بیمار/مطالعه/سری را از فایل دایکام "template.dcm" وارد میکند. لطفاً توجه داشته باشید که ویژگی PatientName در پایان حاوی "Bond^James" خواهد بود و هر مقداری از "template.dcm" بازنویسی خواهد شد. دلیل این است که گزینه -k در پایانترین مرحله زنجیره تبدیل اعمال میشود (بالا را ببینید). - 5.
- img2dcm image.jpg out.dcm --no-checks
مشابه مثال ۱، اما هیچ بررسی ویژگی و هیچ درج ویژگی نوع ۱ و نوع ۲ انجام نمیدهد! بنابراین در این حالت، یک شیء دایکام نامعتبر تولید خواهد شد. این حالت در صورتی که فایل خروجی قرار نیست کامل باشد و تغییرات بیشتری روی آن انجام خواهد شد (مثلاً افزودن ویژگیها با dcmodify) میتواند جالب باشد. تنها در صورتی از گزینه --no-checks استفاده کنید که دقیقاً میدانید چه کاری انجام میدهید! - 6.
- img2dcm image.jpg out.dcm --no-type1-invent
مشابه مثال ۱، اما ویژگیهای گمشده نوع ۱ و/یا مقادیر آنها را ایجاد نمیکند. ویژگیهای نوع ۲ درج خواهند شد. توجه داشته باشید در این حالت باید اطمینان حاصل شود که تمام ویژگیهای نوع ۱ به روشهای دیگر، یعنی با افزودن آنها با گزینه --key فراهم شدهاند. در غیر این صورت، img2dcm خطا داده و تبدیل را متوقف میکند. - 7.
- img2dcm image.jpg out.dcm --keep-appn --insist-on-jfif
مشابه ۱، اما اطلاعات APPn مانند EXIF را به جریان JPEG حاصل در شیء دایکام منتقل میکند. علاوه بر این، --insist-on-jfif در صورتی که اطلاعات JFIF در فایل منبع وجود نداشته باشد، img2dcm را مجبور به توقف فرآیند میکند. - 8.
- img2dcm image1.jpg image2.jpg out.dcm --new-sc
خواندن فایلهای JPEG با نام "image1.jpg" و "image2.jpg"، تبدیل به یک تصویر چندفریمی از کلاس مناسب Multi-frame Secondary Capture SOP، و ذخیره نتیجه در فایل دایکام "out.dcm".
ثبت گزارش (LOGGING)
سطح خروجی گزارشگیری ابزارهای مختلف خط فرمان و کتابخانههای زیربنایی میتواند توسط کاربر مشخص شود. بهطور پیشفرض، فقط خطاها و هشدارها در جریان خطای استاندارد نوشته میشوند. با استفاده از گزینه --verbose پیامهای اطلاعرسانی مانند جزئیات پردازش نیز گزارش میشوند. گزینه --debug را میتوان برای دریافت جزئیات بیشتر در مورد فعالیتهای داخلی، برای نمونه جهت اهداف اشکالزدایی، به کار برد. سایر سطوح لاگ را میتوان با استفاده از گزینه --log-level انتخاب کرد. در حالت --quiet فقط خطاهای مهلک گزارش میشوند. در چنین رخدادهای خطای شدیدی، برنامه معمولاً خاتمه مییابد. برای جزئیات بیشتر درباره سطوح مختلف لاگ، به مستندات ماژول "oflog" مراجعه کنید.
در صورتی که خروجی گزارشها باید درون فایل نوشته شود (اختیاراً همراه با چرخش فایل لاگ)، در syslog (یونیکس) یا event log (ویندوز)، میتوان از گزینه --log-config استفاده کرد. این فایل پیکربندی همچنین امکان هدایت پیامهای خاص به یک جریان خروجی معین و فیلتر کردن پیامها بر اساس ماژول یا برنامهای که در آن تولید شدهاند را فراهم میکند. یک فایل پیکربندی نمونه در <etcdir>/logger.cfg ارائه شده است.
خط فرمان (COMMAND LINE)
تمامی ابزارهای خط فرمان از نشانهگذاری زیر برای پارامترها استفاده میکنند: کروشهها مقادیر اختیاری را در بر میگیرند (۰-۱)، سه نقطه انتهایی نشان میدهد که مقادیر متعدد مجاز است (۱-n)، و ترکیب هر دو به معنای ۰ تا n مقدار است.
گزینههای خط فرمان با یک علامت پیشوند '+' یا '-' از پارامترها متمایز میشوند. معمولاً ترتیب و موقعیت گزینههای خط فرمان اختیاری است (یعنی میتوانند در هر جایی ظاهر شوند). با این حال، اگر گزینهها مانعةالجمع باشند، راستترین گزینه لحاظ میشود. این رفتار با قواعد ارزیابی استاندارد شلهای معمول یونیکس مطابقت دارد.
علاوه بر این، میتوان یک یا چند فایل دستور را با استفاده از علامت '@' به عنوان پیشوند نام فایل مشخص کرد (مانند @command.txt). چنین آرگومانی پیش از هرگونه ارزیابی بیشتر با محتوای فایل متنی مربوطه جایگزین میشود (چندین فاصله متوالی به عنوان یک جداکننده منفرد در نظر گرفته میشوند مگر اینکه میان دو علامت نقلقول قرار گرفته باشند). لطفاً توجه داشته باشید که یک فایل دستور نمیتواند شامل فایل دستور دیگری باشد. این رویکرد ساده اما موثر به کاربر اجازه میدهد تا ترکیبهای رایج گزینهها/پارامترها را خلاصه کرده و از خط فرمانهای طولانی و گیجکننده جلوگیری نماید (یک نمونه در فایل <datadir>/dumppat.txt ارائه شده است).
محیط (ENVIRONMENT)
ابزار img2dcm تلاش میکند واژهنامههای دادههای دایکام مشخصشده در متغیر محیطی DCMDICTPATH را بارگذاری کند. بهطور پیشفرض، یعنی اگر متغیر محیطی DCMDICTPATH تنظیم نشده باشد، فایل <datadir>/dicom.dic بارگذاری میشود مگر اینکه دیکشنری درون برنامه تعبیه شده باشد (پیشفرض در ویندوز).
رفتار پیشفرض باید ترجیح داده شود و متغیر محیطی DCMDICTPATH تنها زمانی استفاده شود که واژهنامههای دادهای جایگزین مورد نیاز باشند. متغیر محیطی DCMDICTPATH دارای قالبی مشابه متغیر PATH در شل یونیکس است که در آن علامت دونقطه (":") ورودیها را جدا میکند. در سیستمهای ویندوز، از یک نقطه-ویرگول (";") به عنوان جداکننده استفاده میشود. کد دیکشنری دادهها تلاش خواهد کرد هر فایل مشخصشده در متغیر محیطی DCMDICTPATH را بارگذاری کند. بارگذاری نشدن هیچ دیکشنری دادهای یک خطا به شمار میرود.
فایلها (FILES)
<datadir>/SC.dump - فایل
دامپ نمونه
برای
تصاویر Secondary Capture
<datadir>/VLP.dump - فایل
دامپ نمونه
برای
تصاویر Visible Light Photographic
<datadir>/OP_template.xml -
الگوی
نمونه XML
برای
تصاویر Ophthalmic Photography
همچنین ببینید (SEE ALSO)
dcm2pnm(1), dcmj2pnm(1), dump2dcm(1), dcmconv(1), dcmodify(1), dcm2xml(1)
حق نشر (COPYRIGHT)
Copyright (C) 2007-2025 by OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.
| Thu Jul 9 2026 18:43:40 | Version 3.7.0 |