.TH "dcmcjpls" 1 "Thu Jul 9 2026 18:43:40" "Version 3.7.0" "OFFIS DCMTK" \" -*- nroff -*- .nh .SH "نام (NAME)" dcmcjpls \- کدگذاری فایل DICOM به نحو انتقال JPEG-LS .PP .SH "خلاصه دستور (SYNOPSIS)" .PP .PP .nf dcmcjpls [options] dcmfile-in dcmfile-out .fi .PP .SH "توضیحات (DESCRIPTION)" .PP ابزار \fBdcmcjpls\fP یک تصویر دایکام فشرده‌نشده (\fIdcmfile-in\fP) را می‌خواند، فشرده‌سازی JPEG-LS را انجام می‌دهد (یعنی تبدیل به یک نحو انتقال کپسوله‌شده DICOM) و تصویر تبدیل‌شده را در یک فایل خروجی (\fIdcmfile-out\fP) می‌نویسد\&. .SH "پارامترها (PARAMETERS)" .PP .PP .nf dcmfile-in نام فایل ورودی DICOM برای تبدیل ("-" برای ورودی استاندارد stdin) dcmfile-out نام فایل خروجی DICOM ("-" برای خروجی استاندارد stdout) .fi .PP .SH "گزینه‌ها (OPTIONS)" .PP .SS "گزینه‌های عمومی (general options)" .PP .nf -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 برای ثبت‌کننده رویدادها .fi .PP .SS "گزینه‌های ورودی (input options)" .PP .nf قالب فایل ورودی: +f --read-file خواندن قالب فایل یا مجموعه داده (پیش‌فرض) +fo --read-file-only فقط خواندن قالب فایل -f --read-dataset خواندن مجموعه داده بدون متاداده‌های فایل نحو انتقال ورودی: -t= --read-xfer-auto استفاده از تشخیص خودکار نحو انتقال (پیش‌فرض) -td --read-xfer-detect نادیده گرفتن نحو انتقال مشخص‌شده در هدر متاداده‌های فایل -te --read-xfer-little خواندن با نحو انتقال صریح VR و ترتیب بایت little endian -tb --read-xfer-big خواندن با نحو انتقال صریح VR و ترتیب بایت big endian -ti --read-xfer-implicit خواندن با نحو انتقال ضمنی VR و ترتیب بایت little endian .fi .PP .SS "گزینه‌های کدگذاری JPEG-LS (JPEG-LS encoding options)" .PP .nf فرآیند JPEG-LS: +el --encode-lossless کدگذاری با نحو انتقال فقط بدون‌افت JPEG-LS (پیش‌فرض) # این گزینه نحو انتقال فقط بدون‌افت JPEG-LS را انتخاب کرده # و فشرده‌سازی بدون‌افت را انجام می‌دهد. +en --encode-nearlossless کدگذاری با نحو انتقال تقریباً بدون‌افت JPEG-LS (مقدار NEAR: 2) # این گزینه نحو انتقال با‌افت JPEG-LS را انتخاب کرده # و فشرده‌سازی تقریباً بدون‌افت را انجام می‌دهد. نرخ بیت JPEG-LS (فقط در حالت تقریباً بدون‌افت): +md --max-deviation [d]eviation: integer (پیش‌فرض: 2) تعیین حداکثر انحراف برای یک پیکسل کدگذاری‌شده # این گزینه حداکثر انحراف مجاز یک پیکسل منفرد از مقدار # اصلی پیکسل را مشخص می‌کند. فشرده‌سازی بدون‌افت: +pr --prefer-raw ترجیح حالت انکودر خام (raw) (پیش‌فرض) # این گزینه انکودر خام را فعال می‌کند. انکودر خام کل سلول پیکسل را # همان‌گونه که از تصویر مبدأ خوانده شده، بدون انجام هیچ‌گونه تغییری # کدگذاری می‌کند. +pc --prefer-cooked ترجیح حالت انکودر پردازش‌شده (cooked) # این گزینه انکودر پردازش‌شده را فعال می‌کند. انکودر پردازش‌شده داده‌های # اورلی (overlay) را به تگ‌های جداگانه (60xx,3000) منتقل کرده و فقط بیت‌های # ذخیره‌شده در هر پیکسل را کدگذاری می‌کند. فشرده‌سازی JPEG-LS: +t1 --threshold1 [t]hreshhold: integer تنظیم پارامتر آستانه ۱ در کدگذاری JPEG-LS +t2 --threshold2 [t]hreshhold: integer تنظیم پارامتر آستانه ۲ در کدگذاری JPEG-LS +t3 --threshold3 [t]hreshhold: integer تنظیم پارامتر آستانه ۳ در کدگذاری JPEG-LS # به طور پیش‌فرض، مقادیر T1، T2 و T3 بر اساس تعداد بیت‌ها در هر نمونه # محاسبه می‌شوند. +rs --reset [r]eset: integer (پیش‌فرض: 64) تنظیم پارامتر بازنشانی (reset) در کدگذاری JPEG-LS درهم‌آمیزی (interleave) در JPEG-LS: +il --interleave-line اجبار به استفاده از تصاویر JPEG-LS با درهم‌آمیزی خطی (پیش‌فرض) # این فلگ حالت درهم‌آمیزی خطی را برای تصویر حاصل تحمیل می‌کند. # در حالت درهم‌آمیزی خطی، هر خط از تصویر مبدأ برای هر مؤلفه به صورت # جداگانه فشرده شده و سپس خط بعدی کدگذاری می‌شود. +is --interleave-sample اجبار به استفاده از تصاویر JPEG-LS با درهم‌آمیزی نمونه‌ای # این فلگ حالت درهم‌آمیزی نمونه‌ای را برای تصویر حاصل تحمیل می‌کند. # در حالت درهم‌آمیزی نمونه‌ای، مؤلفه‌های هر پیکسل پیش از کدگذاری # پیکسل بعدی کدگذاری می‌شوند. +iv --interleave-default استفاده از سریع‌ترین حالت ممکن درهم‌آمیزی # این فلگ حالت درهم‌آمیزی را بر اساس حالت تصویر مبدأ انتخاب می‌کند. # در صورت امکان، تصویر به حالت درهم‌آمیزی متفاوتی تبدیل نمی‌شود. پدینگ جریان‌های بیتی JPEG-LS با طول فرد: +ps --padding-standard پدینگ با نشانگر گسترش‌یافته EOI (پیش‌فرض) # پدینگ جریان‌های بیتی با طول فرد در JPEG-LS با نوشتن نشانگر # قطعه پایان تصویر گسترش‌یافته FF FF D9، مطابق با الزامات استاندارد DICOM. +pz --padding-zero پدینگ با بایت صفر (غیر استاندارد) # پدینگ جریان‌های بیتی با طول فرد در JPEG-LS با نوشتن یک بایت صفر بعد از # نشانگر قطعه پایان تصویر، یعنی FF D9 00. این کار با استاندارد DICOM # مطابقت ندارد اما برای سازگاری متقابل با پیاده‌سازی مرجع HP LOCO که # از جریان‌های بیتی گسترش‌یافته JPEG-LS پشتیبانی نمی‌کند، الزامی است. .fi .PP .SS "گزینه‌های کدگذاری داده‌های پیکسلی کپسوله‌شده (encapsulated pixel data encoding options)" .PP .nf قطعه‌بندی داده‌های پیکسلی کپسوله‌شده: +ff --fragment-per-frame کدگذاری هر فریم به صورت یک قطعه (پیش‌فرض) # این گزینه باعث ایجاد یک قطعه فشرده‌شده برای هر فریم می‌شود (توصیه‌شده). +fs --fragment-size [s]ize: integer محدود کردن اندازه قطعه به s کیلوبایت # این گزینه اندازه قطعه را محدود می‌کند که ممکن است باعث ایجاد # چندین قطعه در هر فریم شود. کدگذاری جدول آفست پایه: +ot --offset-table-create ایجاد جدول آفست (پیش‌فرض) # این گزینه باعث ایجاد یک جدول آفست معتبر برای قطعات فشرده‌شده # JPEG می‌شود. -ot --offset-table-empty خالی گذاشتن جدول آفست # این گزینه باعث ایجاد یک جدول آفست خالی برای قطعات فشرده‌شده # JPEG می‌شود. شناسه کلاس SOP (SOP Class UID): +cd --class-default حفظ شناسه کلاس SOP (پیش‌فرض) # حفظ شناسه کلاس SOP تصویر مبدأ. +cs --class-sc تبدیل به تصویر تصویربرداری ثانویه (مستلزم --uid-always) # تبدیل تصویر به تصویربرداری ثانویه (Secondary Capture). علاوه بر شناسه # کلاس SOP، تمامی ویژگی‌های مورد نیاز برای یک تصویر معتبر تصویربرداری ثانویه # اضافه می‌شوند. همواره یک شناسه نمونه SOP جدید تخصیص می‌یابد. شناسه نمونه SOP (SOP Instance UID): +ud --uid-default تخصیص شناسه جدید در صورت فشرده‌سازی با‌افت (پیش‌فرض) # در صورتی که فشرده‌سازی از نوع JPEG-LS با‌افت باشد، یک شناسه نمونه SOP جدید تخصیص می‌دهد. +ua --uid-always همیشه شناسه جدید تخصیص داده شود # بدون قید و شرط یک شناسه نمونه SOP جدید تخصیص می‌دهد. +un --uid-never هرگز شناسه جدید تخصیص داده نشود # هرگز شناسه نمونه SOP جدیدی تخصیص نمی‌دهد. .fi .PP .SS "گزینه‌های خروجی (output options)" .PP .nf نمایش مقادیر بعد از سال ۱۹۹۳ (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 نوشتن با طول‌های تعریف‌نشده پدینگ انتهای مجموعه داده: -p= --padding-retain عدم تغییر پدینگ (پیش‌فرض) -p --padding-off بدون پدینگ +p --padding-create [f]ile-pad [i]tem-pad: integer تراز کردن فایل مضربی از f بایت و آیتم‌ها مضربی از i بایت .fi .PP .SH "نکات (NOTES)" .PP ابزار \fBdcmcjpls\fP تصاویر دایکام تمامی کلاس‌های SOP را فشرده می‌کند\&. این ابزار تمامی عناصر داده‌های پیکسلی Pixel Data (7fe0,0010) موجود در مجموعه داده را پردازش می‌کند، یعنی فشرده‌سازی روی تصویر آیکون (icon image) نیز انجام می‌شود\&. با این حال، \fBdcmcjpls\fP تلاشی برای اطمینان از اینکه تصویر فشرده‌شده همچنان با تمامی محدودیت‌های IOD شئ مطابقت دارد انجام نمی‌دهد\&. .PP کاربر مسئول اطمینان از این موضوع است که تصاویر فشرده‌شده‌ای که ایجاد می‌کند با استاندارد DICOM مطابقت داشته باشند\&. در صورت وجود ابهام، ابزار \fBdcmcjpls\fP به کاربر امکان می‌دهد تصویر را به تصویربرداری ثانویه (secondary capture) تبدیل کند - این کلاس SOP محدودیت‌هایی مشابه موارد ذکرشده در بالا را تحمیل نمی‌کند\&. .SH "نحوهای انتقال (TRANSFER SYNTAXES)" .PP ابزار \fBdcmcjpls\fP از نحوهای انتقال زیر برای ورودی (\fIdcmfile-in\fP) پشتیبانی می‌کند: .PP .PP .nf LittleEndianImplicitTransferSyntax 1\&.2\&.840\&.10008\&.1\&.2 LittleEndianExplicitTransferSyntax 1\&.2\&.840\&.10008\&.1\&.2\&.1 DeflatedExplicitVRLittleEndianTransferSyntax 1\&.2\&.840\&.10008\&.1\&.2\&.1\&.99 (*) BigEndianExplicitTransferSyntax 1\&.2\&.840\&.10008\&.1\&.2\&.2 .fi .PP .PP (*) در صورت کامپایل با فعال بودن پشتیبانی از zlib .PP ابزار \fBdcmcjpls\fP از نحوهای انتقال زیر برای خروجی (\fIdcmfile-out\fP) پشتیبانی می‌کند: .PP .PP .nf JPEGLSLosslessTransferSyntax 1\&.2\&.840\&.10008\&.1\&.2\&.4\&.80 JPEGLSLossyTransferSyntax 1\&.2\&.840\&.10008\&.1\&.2\&.4\&.81 .fi .PP .SH "گزارش‌گیری (LOGGING)" .PP سطح خروجی گزارش‌گیری ابزارهای مختلف خط فرمان و کتابخانه‌های زیربنایی می‌تواند توسط کاربر تعیین شود\&. به طور پیش‌فرض، فقط خطاها و هشدارها در جریان خطای استاندارد (stderr) نوشته می‌شوند\&. با استفاده از گزینه \fI--verbose\fP پیام‌های اطلاع‌رسانی مانند جزئیات پردازش نیز گزارش می‌شوند\&. گزینه \fI--debug\fP می‌تواند برای دریافت جزئیات بیشتر درباره فعالیت‌های داخلی، برای مثال جهت اشکال‌زدایی، استفاده شود\&. سایر سطوح لاگ را می‌توان با گزینه \fI--log-level\fP انتخاب کرد\&. در حالت \fI--quiet\fP فقط خطاهای مهلک گزارش می‌شوند\&. در چنین خطاهای بسیار شدیدی، برنامه معمولاً خاتمه می‌یابد\&. برای جزئیات بیشتر درباره سطوح مختلف لاگ، به مستندات ماژول "oflog" مراجعه کنید\&. .PP در صورتی که خروجی لاگ باید در فایل نوشته شود (اختیاری با چرخش فایل لاگ)، به syslog (در یونیکس) یا event log (در ویندوز)، می‌توان از گزینه \fI--log-config\fP استفاده کرد\&. این فایل پیکربندی همچنین امکان هدایت پیام‌های خاص به یک جریان خروجی معین و فیلتر کردن پیام‌ها بر اساس ماژول یا برنامه‌ای که در آن تولید شده‌اند را فراهم می‌کند\&. یک نمونه فایل پیکربندی در \fI/logger\&.cfg\fP ارائه شده است\&. .SH "خط فرمان (COMMAND LINE)" .PP تمامی ابزارهای خط فرمان از نشانه‌گذاری زیر برای پارامترها استفاده می‌کنند: براکت‌های مربع مقادیر اختیاری (۰-۱) را در بر می‌گیرند، سه نقطه نشان می‌دهد که چندین مقدار مجاز است (۱-n)، و ترکیب هر دو به معنای ۰ تا n مقدار است\&. .PP گزینه‌های خط فرمان با علامت '+' یا '-' در ابتدا از پارامترها متمایز می‌شوند\&. معمولاً ترتیب و مکان گزینه‌های خط فرمان اختیاری است (یعنی می‌توانند در هر جایی ظاهر شوند)\&. با این حال، اگر گزینه‌ها ناسازگار با یکدیگر باشند، آخرین مورد سمت راست اعمال می‌شود\&. این رفتار مطابق با قواعد ارزیابی استاندارد پوسته‌های متداول یونیکس است\&. .PP علاوه بر این، یک یا چند فایل حاوی دستور می‌توانند با استفاده از علامت '@' به عنوان پیشوند نام فایل مشخص شوند (مانند \fI@command\&.txt\fP)\&. چنین آرگومان دستوری پیش از هرگونه ارزیابی بیشتر با محتوای فایل متنی مربوطه جایگزین می‌شود (فاصله‌های سفید متوالی به عنوان یک جداکننده منفرد در نظر گرفته می‌شوند مگر اینکه میان دو علامت نقل‌قول قرار گرفته باشند)\&. لطفاً توجه داشته باشید که یک فایل دستور نمی‌تواند شامل یک فایل دستور دیگر باشد\&. این رویکرد ساده اما مؤثر امکان خلاصه‌سازی ترکیب‌های متداول گزینه‌ها/پارامترها را فراهم کرده و از خط فرمان‌های طولانی و گیج‌کننده جلوگیری می‌کند (نمونه‌ای در فایل \fI/dumppat\&.txt\fP ارائه شده است)\&. .SH "متغیرهای محیطی (ENVIRONMENT)" .PP ابزار \fBdcmcjpls\fP تلاش خواهد کرد تا واژه‌نامه‌های داده دایکام مشخص‌شده در متغیر محیطی \fIDCMDICTPATH\fP را بارگذاری کند\&. به طور پیش‌فرض، یعنی اگر متغیر محیطی \fIDCMDICTPATH\fP تنظیم نشده باشد، فایل \fI/dicom\&.dic\fP بارگذاری خواهد شد مگر اینکه واژه‌نامه درون برنامه تعبیه شده باشد (پیش‌فرض در ویندوز)\&. .PP رفتار پیش‌فرض باید ترجیح داده شود و متغیر محیطی \fIDCMDICTPATH\fP تنها زمانی استفاده شود که واژه‌نامه‌های داده جایگزین مورد نیاز باشند\&. متغیر محیطی \fIDCMDICTPATH\fP قالبی مشابه با متغیر \fIPATH\fP پوسته یونیکس دارد که در آن دونقطه (":") ورودی‌ها را جدا می‌کند\&. در سیستم‌های ویندوز، از نقطه‌ویرگول (";") به عنوان جداکننده استفاده می‌شود\&. کد واژه‌نامه داده تلاش خواهد کرد تا هر فایل مشخص‌شده در متغیر محیطی \fIDCMDICTPATH\fP را بارگذاری کند\&. عدم امکان بارگذاری هرگونه واژه‌نامه داده یک خطا محسوب می‌شود\&. .SH "همچنین ببینید (SEE ALSO)" .PP \fBdcmdjpls\fP(1) .SH "کپی‌رایت و تکثیر (COPYRIGHT)" .PP Copyright (C) 2009-2025 by OFFIS e\&.V\&., Escherweg 2, 26121 Oldenburg, Germany\&.