GDAL-RASTER-STACK(1) GDAL GDAL-RASTER-STACK(1)

gdal-raster-stack - ترکیب باندهای ورودی با یکدیگر در یک خروجی چندبانده، به‌صورت مجازی (VRT) یا فیزیکی

در نسخه 3.11 اضافه شد.

Usage: gdal raster stack [OPTIONS] <INPUTS>... <OUTPUT>
Combine together input bands into a multi-band output, either virtual (VRT) or materialized.
Positional arguments:
  -i, --input <INPUTS>                                            Input raster datasets (or specify a @<filename> to point to a file containing filenames) [1.. values] [required] [not available in pipelines]
  -o, --output <OUTPUT>                                           Output raster dataset [required] [not available in pipelines]
Common Options:
  -h, --help                                                      Display help message and exit
  --json-usage                                                    Display usage as JSON document and exit
  --config <KEY>=<VALUE>                                          Configuration option [may be repeated]
  -q, --quiet                                                     Quiet mode (no progress bar or warning message) [not available in pipelines]
Options:
  -f, --of, --format, --output-format <OUTPUT-FORMAT>             Output format ("GDALG" allowed) [not available in pipelines]
  --co, --creation-option <KEY>=<VALUE>                           Creation option [may be repeated] [not available in pipelines]
  --overwrite                                                     Whether overwriting existing output dataset is allowed [not available in pipelines]
                                                                  Mutually exclusive with --append
  --append                                                        Append as a subdataset to existing output [not available in pipelines]
                                                                  Mutually exclusive with --overwrite
  -b, --band <BAND>                                               Input band(s) (1-based index) [may be repeated]
  --absolute-path                                                 Whether the path to the input datasets should be stored as an absolute path
  --resolution <xres>,<yres>|same|average|common|highest|lowest>  Target resolution (in destination CRS units) (default: same)
  --bbox <BBOX>                                                   Target bounding box as xmin,ymin,xmax,ymax (in destination CRS units)
  --target-aligned-pixels                                         Round target extent to target resolution
  --input-nodata <INPUT-NODATA>                                   Set nodata values for input bands. [1.. values]
  --output-nodata <OUTPUT-NODATA>                                 Set nodata values at the destination band level. [1.. values]
  --hide-nodata                                                   Makes the destination band not report the NoData.
Advanced Options:
  --if, --input-format <INPUT-FORMAT>                             Input formats [may be repeated] [not available in pipelines]
  --oo, --open-option <KEY>=<VALUE>                               Open options [may be repeated] [not available in pipelines]

این برنامه باندهای ورودی را از مجموعه‌داده‌های GDAL در یک مجموعه‌داده با یکدیگر ترکیب می‌کند؛ این مجموعه‌داده می‌تواند یک پشته مجازی در قالب VRT (Virtual Dataset) یا در یک قالب رستر مرسوم‌تر مانند GeoTIFF باشد.

تمام باندهای هر فایل ورودی به عنوان باندهای خروجی مجزا افزوده می‌شوند، مگر اینکه -b برای انتخاب زیرمجموعه‌ای از آن‌ها مشخص شده باشد.

فهرست مجموعه‌داده‌های GDAL ورودی را می‌توان در انتهای خط فرمان مشخص کرد یا برای فهرست‌های بسیار طولانی، در یک فایل متنی (یک نام فایل در هر خط) قرار داد. نویسه‌های عام مانند '*'، '?' یا '['] مربوط به VSIGlob() را می‌توان حتی برای فایل‌های واقع بر روی سامانه‌های فایل شبکه‌ای مانند /vsis3/، /vsigs/، /vsiaz/ و غیره نیز به کار برد.

از نسخه 3.12 GDAL به بعد، این دستور می‌تواند به عنوان نخستین گام در gdal raster pipeline نیز استفاده شود.

این برنامه از سریال‌سازی خط فرمان به صورت یک فایل JSON با استفاده از قالب خروجی GDALG پشتیبانی می‌کند. فایل حاصل را می‌توان سپس به عنوان یک مجموعه‌داده رستر با استفاده از درایور GDALG: GDAL Streamed Algorithm باز کرد و خط لوله (pipeline) مشخص‌شده را به‌صورت در لحظه (on-the-fly) یا جریانی (streamed) اعمال نمود.

در نسخه 3.12.0 اضافه شد.

هنگام نوشتن یک فایل VRT، نوشتن مسیر مطلق مجموعه‌داده‌های ورودی را فعال می‌کند. به‌طور پیش‌فرض، نام فایل‌های ورودی (در صورت امکان) به‌صورت نسبی نسبت به نام فایل VRT نوشته می‌شوند.

انتخاب یک باند ورودی (<band>) برای پردازش. شماره‌گذاری باندها از ۱ آغاز می‌شود. اگر باندهای ورودی مشخص نشوند، تمام باندها به خروجی افزوده خواهند شد. می‌توان از چندین سوییچ -b برای انتخاب مجموعه‌ای از باندهای ورودی استفاده کرد.
تنظیم محدوده‌های زمین‌مرجع فایل خروجی. مقادیر باید بر حسب واحدهای زمین‌مرجع بیان شوند. اگر مشخص نشود، محدوده خروجی برابر با حداقل کادر احاطه‌کننده (bounding box) مجموعه رسترهای مبدأ خواهد بود. پیکسل‌های درون محدوده خروجی که توسط هیچ رستر مبدأ پوشش داده نشده‌اند، به عنوان پیکسل‌های معتبر با مقدار صفر خوانده می‌شوند، مگر اینکه مقدار NODATA با استفاده از --output-nodata مشخص شده باشد.
حتی اگر هر باندی حاوی مقدار nodata باشد، ارائه این گزینه باعث می‌شود باند خروجی مقدار NoData را گزارش نکند. زمانی که می‌خواهید رنگ پس‌زمینه مجموعه‌داده را کنترل کنید مفید است.
تنظیم مقادیر nodata برای باندهای ورودی (می‌توان مقادیر متفاوتی برای هر باند ارائه داد). اگر این گزینه مشخص نشود، تنظیمات ذاتی nodata در مجموعه‌داده‌های مبدأ (در صورت وجود) استفاده خواهد شد. مقدار تعیین‌شده توسط این گزینه در عنصر NODATA از هر عنصر ComplexSource نوشته می‌شود.
تنظیم مقادیر nodata در سطح باند خروجی (می‌توان مقادیر متفاوتی برای هر باند ارائه داد). اگر بیش از یک مقدار ارائه شود، تمام مقادیر باید داخل علامت نقل‌قول قرار گیرند تا به عنوان یک آرگومان واحد در سیستم‌عامل نگه‌داشته شوند. اگر این گزینه مشخص نشود، تنظیمات ذاتی nodata در نخستین مجموعه‌داده (در صورت وجود) استفاده خواهد شد. مقدار تعیین‌شده توسط این گزینه در عنصر NoDataValue از هر عنصر VRTRasterBand نوشته می‌شود. از مقدار None برای نادیده گرفتن تنظیمات ذاتی nodata در مجموعه‌داده‌های مبدأ استفاده کنید.
در صورتی که تفکیک‌پذیری تمام فایل‌های ورودی یکسان نباشد، پرچم --resolution به کاربر امکان می‌دهد نحوه محاسبه تفکیک‌پذیری خروجی را کنترل کند.

same، مقدار پیش‌فرض، بررسی می‌کند که آیا همه رسترهای مبدأ تفکیک‌پذیری یکسانی دارند یا خیر و در صورت عدم تطابق با خطا متوقف می‌شود.

highest کوچک‌ترین مقادیر ابعاد پیکسل را در میان مجموعه رسترهای مبدأ انتخاب می‌کند.

lowest بزرگ‌ترین مقادیر ابعاد پیکسل را در میان مجموعه رسترهای مبدأ انتخاب می‌کند.

average میانگین ابعاد پیکسل را در میان مجموعه رسترهای مبدأ محاسبه می‌کند.

common بزرگ‌ترین مقسوم‌علیه مشترک ابعاد پیکسل مبدأ را تعیین می‌کند، به عنوان مثال 0.2 برای ابعاد پیکسل مبدأ 0.4 و 0.6.

<xres>,<yres>. مقادیر باید بر حسب واحدهای زمین‌مرجع بیان شوند. هر دو مقدار باید مثبت باشند.

(پیکسل‌های تراز شده با هدف) مختصات محدوده فایل خروجی را با مقادیر --resolution تراز می‌کند، به‌طوری که محدوده تراز شده شامل حداقل محدوده باشد. ترازسازی به این معناست که xmin / resx، ymin / resy، xmax / resx و ymax / resy مقادیر صحیحی باشند.

الحاق رستر ورودی به عنوان یک زیرمجموعه‌داده (subdataset) جدید به یک فایل خروجی موجود. تنها با درایورهایی کار می‌کند که از افزودن زیرمجموعه‌داده پشتیبانی می‌کنند، مانند GTiff -- GeoTIFF File Format و GPKG -- GeoPackage raster. همچنین اگر مجموعه‌داده خروجی هنوز وجود نداشته باشد، آن را ایجاد می‌کند.
بسیاری از قالب‌ها یک یا چند گزینه اختیاری ساخت دارند که می‌توانند برای کنترل جزئیات فایل ایجادشده استفاده شوند. به عنوان مثال، درایور GeoTIFF از گزینه‌های ساخت برای کنترل فشرده‌سازی و کاشی‌بندی فایل پشتیبانی می‌کند.

می‌تواند تکرار شود.

گزینه‌های ساخت موجود بسته به درایور قالب متفاوت است و برخی قالب‌های ساده اصلاً هیچ گزینه ساختی ندارند. فهرستی از گزینه‌های پشتیبانی‌شده برای یک قالب را می‌توان با گزینه خط فرمان --formats مشاهده کرد، اما مستندات قالب، منبع معتبر اطلاعات درباره گزینه‌های ساخت درایور است. برای گزینه‌های ساخت مجاز هر قالب، به مستندات اختصاصی هر قالب در Raster drivers مراجعه کنید.

نام قالب/درایور که باید برای تلاش جهت باز کردن فایل(های) ورودی به کار رود. به‌طور کلی نیازی به تعیین آن نیست، اما در مواردی که تشخیص خودکار درایور در انتخاب درایور مناسب ناموفق است، می‌تواند برای نادیده گرفتن تشخیص خودکار استفاده شود. این گزینه را می‌توان چندین بار برای تعیین چندین درایور نامزد تکرار کرد. توجه داشته باشید که این گزینه آن درایورها را مجبور به باز کردن حتمی مجموعه‌داده نمی‌کند؛ به‌ویژه برخی درایورها الزاماتی برای پسوند فایل دارند.

می‌تواند تکرار شود.

گزینه باز کردن مجموعه‌داده (مختص قالب).

می‌تواند تکرار شود.

تعیین این‌که از کدام قالب رستر خروجی استفاده شود. مقادیر مجاز را می‌توان با دستور زیر به دست آورد: gdal --formats | grep raster | grep rw | sort
به برنامه اجازه می‌دهد تا فایل یا مجموعه‌داده هدفِ موجود را بازنویسی کند. در غیر این صورت، به‌طور پیش‌فرض، اگر فایل یا مجموعه‌داده هدف از قبل وجود داشته باشد، gdal با خطا متوقف می‌شود.

این برنامه در صورت موفقیت کد وضعیت 0 و در صورت بروز خطا مقداری غیر صفر برمی‌گرداند (خطاهای غیرمسدودکننده که به عنوان هشدار صادر می‌شوند، به منزله اجرای موفقیت‌آمیز در نظر گرفته می‌شوند).

gdal raster stack red.tif green.tif blue.tif rgb.tif

gdal raster stack raster1.tif raster2.tif result.vrt

Even Rouault <even.rouault@spatialys.com>

1998-2026

August 18, 2026