dcmconv(1) OFFIS DCMTK dcmconv(1)

dcmconv - تبدیل کدگذاری فایل دایکام

dcmconv [options] dcmfile-in dcmfile-out

ابزار dcmconv یک فایل دایکام (dcmfile-in) را می‌خواند، تبدیل کدگذاری را روی آن انجام می‌دهد و داده‌های تبدیل‌شده را در یک فایل خروجی (dcmfile-out) می‌نویسد.

dcmfile-in   نام فایل ورودی DICOM برای تبدیل ("-" برای stdin)
dcmfile-out  نام فایل خروجی DICOM برای نوشتن ("-" برای stdout)

-h   --help
       چاپ این متن راهنما و خروج
     --version
       چاپ اطلاعات نسخه و خروج
     --arguments
       چاپ آرگومان‌های بسط‌یافته خط فرمان
-q   --quiet
       حالت بی‌صدا، عدم چاپ هشدارها و خطاها
-v   --verbose
       حالت پرگو، چاپ جزئیات پردازش
-d   --debug
       حالت اشکال‌زدایی، چاپ اطلاعات دیباگ
-l   --log-level  [l]evel: string constant
       (fatal, error, warn, info, debug, trace)
       استفاده از سطح l برای ثبت‌کننده لاگ
-l   --log-config  [f]ilename: string
       استفاده از فایل کانفیگ f برای ثبت‌کننده لاگ

قالب فایل ورودی:
  +f   --read-file
         خواندن قالب فایل یا مجموعه داده (پیش‌فرض)
  +fo  --read-file-only
         فقط خواندن قالب فایل
  -f   --read-dataset
         خواندن مجموعه داده بدون اطلاعات متای فایل
نحو انتقال ورودی:
  -t=  --read-xfer-auto
         استفاده از تشخیص خودکار TS (پیش‌فرض)
  -td  --read-xfer-detect
         نادیده گرفتن TS مشخص‌شده در متاسرآیند فایل
  -te  --read-xfer-little
         خواندن با TS صریح VR و ترتیب بایت little endian
  -tb  --read-xfer-big
         خواندن با TS صریح VR و ترتیب بایت big endian
  -ti  --read-xfer-implicit
         خواندن با TS ضمنی VR و ترتیب بایت little endian
تجزیه اطلاعات متای فایل:
  +ml  --use-meta-length
         استفاده از طول گروه اطلاعات متای فایل (پیش‌فرض)
  -ml  --ignore-meta-length
         نادیده گرفتن طول گروه اطلاعات متای فایل
تجزیه ویژگی‌های با طول فرد:
  +ao  --accept-odd-length
         پذیرش ویژگی‌های با طول فرد (پیش‌فرض)
  +ae  --assume-even-length
         فرض زوج بودن طول با افزودن یک بایت به طول واقعی
مدیریت VR صریح:
  +ev  --use-explicit-vr
         استفاده از VR صریح از مجموعه داده (پیش‌فرض)
  -ev  --ignore-explicit-vr
         نادیده گرفتن VR صریح (ترجیح واژه‌نامه داده)
مدیریت VR غیر استاندارد:
  +vr  --treat-as-unknown
         برخورد با VR غیر استاندارد به عنوان ناشناخته (پیش‌فرض)
  -vr  --assume-implicit
         تلاش برای خواندن با TS ضمنی VR و ترتیب بایت little endian
مدیریت عناصر UN با طول تعریف‌نشده:
  +ui  --enable-cp246
         خواندن UN با طول تعریف‌نشده به عنوان VR ضمنی (پیش‌فرض)
  -ui  --disable-cp246
         خواندن UN با طول تعریف‌نشده به عنوان VR صریح
مدیریت عناصر UN با طول تعریف‌شده:
  -uc  --retain-un
         نگه‌داشتن عناصر به عنوان UN (پیش‌فرض)
  +uc  --convert-un
         تبدیل به VR واقعی در صورت شناخته‌شده بودن
مدیریت عناصر اختصاصی با حداکثر طول (VR ضمنی):
  -sq  --maxlength-dict
         خواندن طبق تعریف در واژه‌نامه (پیش‌فرض)
  +sq  --maxlength-seq
         خواندن به عنوان توالی با طول تعریف‌نشده
مدیریت آیتم‌های محدودکننده اشتباه:
  -rd  --use-delim-items
         استفاده از آیتم‌های محدودکننده از مجموعه داده (پیش‌فرض)
  +rd  --replace-wrong-delim
         جایگزینی آیتم‌های محدودکننده اشتباه توالی/آیتم
مدیریت عناصر غیرمجاز OB/OW با طول تعریف‌نشده:
  -oi  --illegal-obow-rej
         رد کردن مجموعه داده دارای عنصر غیرمجاز (پیش‌فرض)
  +oi  --illegal-obow-conv
         تبدیل عنصر OB/OW با طول تعریف‌نشده به SQ
مدیریت توالی VOI LUT با VR از نوع OW و طول صریح:
  -vi  --illegal-voi-rej
         رد کردن مجموعه داده دارای VOI LUT غیرمجاز (پیش‌فرض)
  +vi  --illegal-voi-conv
         تبدیل VOI LUT غیرمجاز به SQ
مدیریت داده‌های پیکسل با طول صریح برای نحوهای انتقال کپسوله‌شده:
  -pe  --abort-expl-pixdata
         توقف در صورت برخورد با داده‌های پیکسل با طول صریح (پیش‌فرض)
  +pe  --use-expl-pixdata
         استفاده از داده‌های پیکسل با طول صریح
مدیریت عمومی خطاهای تجزیه‌گر:
  +Ep  --ignore-parse-errors
         تلاش برای بازیابی از خطاهای تجزیه
  -Ep  --handle-parse-errors
         مدیریت خطاهای تجزیه و توقف فرآیند تجزیه (پیش‌فرض)
سایر گزینه‌های تجزیه:
  +st  --stop-after-elem  [t]ag: "gggg,eeee" or dictionary name
         توقف تجزیه پس از عنصر مشخص‌شده توسط t
تصحیح خودکار داده‌ها:
  +dc  --enable-correction
         فعال‌سازی تصحیح خودکار داده‌ها (پیش‌فرض)
  -dc  --disable-correction
         غیرفعال‌سازی تصحیح خودکار داده‌ها
قالب جریان بیتی ورودی فشرده‌شده با deflate:
  +bd  --bitstream-deflated
         انتظار جریان بیتی فشرده‌شده با deflate (پیش‌فرض)
  +bz  --bitstream-zlib
         انتظار جریان بیتی zlib فشرده‌شده

مجموعه نویسه خاص:
  # گزینه‌های زیر نیازمند پشتیبانی از کتابخانه کدگذاری نویسه زیربنایی
  # هستند (برای مشاهده اینکه کدام‌یک در دسترس است، به خروجی --version مراجعه کنید)
  +U8  --convert-to-utf8
         تبدیل تمام مقادیر عناصری که تحت تأثیر
         Specific Character Set (0008,0005) قرار دارند به UTF-8
  +L1  --convert-to-latin1
         تبدیل مقادیر عناصر تحت تأثیر به ISO 8859-1
  +A7  --convert-to-ascii
         تبدیل مقادیر عناصر تحت تأثیر به ASCII هفت بیتی
  +C   --convert-to-charset  [c]harset: string
         تبدیل مقادیر عناصر تحت تأثیر به مجموعه نویسه
         مشخص‌شده توسط اصطلاح تعریف‌شده دایکام c
  -Ct  --transliterate
         تلاش برای تقریب نویسه‌هایی که قابل بازنمایی نیستند
         از طریق نویسه‌های با ظاهر مشابه
  -Cd  --discard-illegal
         دور انداختن نویسه‌هایی که در مجموعه
         نویسه مقصد قابل بازنمایی نیستند
سایر گزینه‌های پردازش:
  -ig  --no-invalid-groups
         حذف عناصر دارای شماره گروه نامعتبر

قالب فایل خروجی:
  +Fm  --write-new-meta-info
         نوشتن قالب فایل با اطلاعات متای جدید (پیش‌فرض)
  +F   --write-file
         نوشتن قالب فایل
  -F   --write-dataset
         نوشتن مجموعه داده بدون اطلاعات متای فایل
نحو انتقال خروجی:
  +t=  --write-xfer-same
         نوشتن با همان TS ورودی (پیش‌فرض)
  +te  --write-xfer-little
         نوشتن با TS صریح VR و ترتیب بایت little endian
  +tb  --write-xfer-big
         نوشتن با TS صریح VR و ترتیب بایت big endian
  +ti  --write-xfer-implicit
         نوشتن با TS ضمنی VR و ترتیب بایت little endian
  +td  --write-xfer-deflated
         نوشتن با TS فشرده‌شده deflated صریح VR و ترتیب بایت little endian
  +tg  --write-xfer-ge
         نوشتن TS اختصاصی GE با VR ضمنی little endian
         و داده‌های پیکسل big endian (غیر استاندارد)
نمایش‌های مقداری (VR) پس از ۱۹۹۳:
  +u   --enable-new-vr
         فعال‌سازی پشتیبانی از VRهای جدید (UN/UT) (پیش‌فرض)
  -u   --disable-new-vr
         غیرفعال‌سازی پشتیبانی از VRهای جدید، تبدیل به OB
کدگذاری طول گروه:
  +g=  --group-length-recalc
         محاسبه مجدد طول گروه‌ها در صورت وجود (پیش‌فرض)
  +g   --group-length-create
         همیشه نوشتن با عناصر طول گروه
  -g   --group-length-remove
         همیشه نوشتن بدون عناصر طول گروه
کدگذاری طول در توالی‌ها و آیتم‌ها:
  +e   --length-explicit
         نوشتن با طول‌های صریح (پیش‌فرض)
  -e   --length-undefined
         نوشتن با طول‌های تعریف‌نشده
  +eo  --write-oversized
         نوشتن توالی‌ها و آیتم‌های با طول صریح بیش‌ازحد بزرگ
         با طول تعریف‌نشده (پیش‌فرض)
  -eo  --abort-oversized
         توقف در صورت وجود توالی‌ها/آیتم‌های صریح بیش‌ازحد بزرگ
پدینگ انتهایی مجموعه داده (نه با --write-dataset):
  -p=  --padding-retain
         عدم تغییر پدینگ (پیش‌فرض در صورت عدم استفاده از --write-dataset)
  -p   --padding-off
         بدون پدینگ (ضمنی در صورت استفاده از --write-dataset)
  +p   --padding-create  [f]ile-pad [i]tem-pad: integer
         تراز کردن فایل روی مضربی از f بایت
         و آیتم‌ها روی مضربی از i بایت
سطح فشرده‌سازی deflate (فقط با --write-xfer-deflated):
  +cl  --compression-level  [l]evel: integer (پیش‌فرض: 6)
         0=بدون فشرده‌سازی، 1=سریع‌ترین، 9=بهترین فشرده‌سازی

سطح خروجی گزارش‌گیری ابزارهای مختلف خط فرمان و کتابخانه‌های زیربنایی می‌تواند توسط کاربر مشخص شود. به طور پیش‌فرض، فقط خطاها و هشدارها در جریان خطای استاندارد نوشته می‌شوند. با استفاده از گزینه --verbose پیام‌های اطلاع‌رسانی مانند جزئیات پردازش نیز گزارش می‌شوند. گزینه --debug می‌تواند برای دریافت جزئیات بیشتر از فعالیت‌های داخلی، به عنوان مثال برای اهداف اشکال‌زدایی، استفاده شود. سایر سطوح گزارش‌گیری را می‌توان با استفاده از گزینه --log-level انتخاب کرد. در حالت --quiet فقط خطاهای مهلک گزارش می‌شوند. در چنین رخدادهای خطای بسیار شدیدی، برنامه معمولاً خاتمه می‌یابد. برای جزئیات بیشتر درباره سطوح مختلف گزارش‌گیری، به مستندات ماژول "oflog" مراجعه کنید.

در صورتی که خروجی گزارش‌گیری باید در یک فایل (اختیاراً همراه با چرخش فایل لاگ)، در syslog (یونیکس) یا event log (ویندوز) نوشته شود، می‌توان از گزینه --log-config استفاده کرد. این فایل پیکربندی همچنین امکان هدایت تنها پیام‌های خاص به یک جریان خروجی معین و فیلتر کردن برخی پیام‌ها بر اساس ماژول یا برنامه‌ای که در آن تولید شده‌اند را فراهم می‌کند. یک نمونه فایل پیکربندی در <etcdir>/logger.cfg ارائه شده است.

تمامی ابزارهای خط فرمان از نشانه‌گذاری زیر برای پارامترها استفاده می‌کنند: براکت‌های مربع مقادیر اختیاری (۰-۱) را در بر می‌گیرند، سه نقطه در انتها نشان‌دهنده مجاز بودن چندین مقدار است (۱-n)، و ترکیب هر دو به معنای ۰ تا n مقدار است.

گزینه‌های خط فرمان با علامت پیشوند '+' یا '-' از پارامترها متمایز می‌شوند. معمولاً ترتیب و موقعیت گزینه‌های خط فرمان اختیاری است (یعنی می‌توانند در هر جایی ظاهر شوند). با این حال، اگر گزینه‌ها مانعة‌الجمع باشند، گزینه‌ای که در راست‌ترین موقعیت قرار دارد اعمال می‌شود. این رفتار مطابق با قوانین استاندارد ارزیابی در شل‌های متداول یونیکس است.

علاوه بر این، یک یا چند فایل دستور را می‌توان با استفاده از علامت '@' به عنوان پیشوند نام فایل مشخص کرد (مانند @command.txt). چنین آرگومان دستوری پیش از هرگونه ارزیابی بیشتر، با محتوای فایل متنی متناظر جایگزین می‌شود (چندین فاصله خالی متوالی به عنوان یک جداکننده واحد در نظر گرفته می‌شوند مگر اینکه بین دو علامت نقل‌قول قرار گرفته باشند). لطفاً توجه داشته باشید که یک فایل دستور نمی‌تواند شامل فایل دستور دیگری باشد. این رویکرد ساده اما مؤثر امکان خلاصه‌سازی ترکیب‌های متداول گزینه‌ها/پارامترها را فراهم می‌سازد و از خطوط فرمان طولانی و گیج‌کننده جلوگیری می‌کند (یک مثال در فایل <datadir>/dumppat.txt ارائه شده است).

ابزار dcmconv تلاش خواهد کرد تا واژه‌نامه‌های داده دایکام مشخص‌شده در متغیر محیطی DCMDICTPATH را بارگذاری کند. به طور پیش‌فرض، یعنی اگر متغیر محیطی DCMDICTPATH تنظیم نشده باشد، فایل <datadir>/dicom.dic بارگذاری خواهد شد مگر اینکه واژه‌نامه درون برنامه گنجانده شده باشد (پیش‌فرض برای ویندوز).

رفتار پیش‌فرض باید ترجیح داده شود و از متغیر محیطی DCMDICTPATH فقط زمانی استفاده شود که به واژه‌نامه‌های داده جایگزین نیاز باشد. فرمت متغیر محیطی DCMDICTPATH مشابه متغیر PATH در شل یونیکس است و از دو نقطه (":") برای جداسازی ورودی‌ها استفاده می‌کند. در سیستم‌های ویندوز، از نقطه ویرگول (";") به عنوان جداکننده استفاده می‌شود. کد واژه‌نامه داده تلاش خواهد کرد تا هر فایل مشخص‌شده در متغیر محیطی DCMDICTPATH را بارگذاری کند. اگر هیچ واژه‌نامه داده‌ای بارگذاری نشود، یک خطا رخ خواهد داد.

بسته به گزینه‌های خط فرمان مشخص‌شده، ابزار dcmconv تلاش خواهد کرد تا جدول‌های نگاشت مجموعه نویسه را بارگذاری کند. این امر زمانی رخ می‌دهد که DCMTK با کتابخانه oficonv کامپایل شده باشد (که حالت پیش‌فرض است) و جدول‌های نگاشت درون کتابخانه گنجانده نشده باشند (حالت پیش‌فرض زمانی که DCMTK از کتابخانه‌های مشترک استفاده می‌کند).

انتظار می‌رود فایل‌های جدول نگاشت در <datadir> مربوط به DCMTK قرار داشته باشند. از متغیر محیطی DCMICONVPATH می‌توان برای تعیین یک مکان متفاوت استفاده کرد. اگر مکان متفاوتی مشخص شود، آن جدول‌های نگاشت جایگزین هرگونه جدول داخلی نیز می‌شوند.

dcmdump(1)

Copyright (C) 1994-2025 by OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.

Thu Jul 9 2026 18:43:40 Version 3.7.0