پاسخ کوتاه: شاخص NDWI (شاخص تفاضل نرمالشده آب) با رابطه McFeeters یعنی NDWI = (Green − NIR) / (Green + NIR) پهنههای آبی را برجسته میکند؛ در سنتینل ۲ باند B3 و B8 و در لندست ۸ و ۹ باند ۳ و ۵. مقادیر مثبت معمولاً آباند. برای جدا کردن آب از ساختمانها از MNDWI با باند SWIR استفاده کنید، آستانه را با روش Otsu تعیین کنید، ماسک آب را به پلیگون تبدیل و مساحت را در سیستم UTM حساب کنید.
از کوچک شدن دریاچه ارومیه و خشک شدن تالابهای هامون و گاوخونی تا پایش حجم مخازن سدها و ثبت وسعت سیلهای ۱۳۹۸، پرسش «چقدر آب هست و کجاست؟» یکی از پرکاربردترین پرسشهای سنجش از دور در ایران است. ابزار اصلی پاسخ هم شاخصهای طیفی آباند. اما بیشتر آموزشهای فارسی فقط فرمول را نشان میدهند و همانجا تمام میشوند؛ در حالی که خروجی واقعی یک پروژه «مساحت پهنه آبی با عدم قطعیت مشخص» است. در این راهنما مسیر کامل شاخص ← آستانه ← ماسک ← پلیگون ← مساحت را در سه نرمافزار طی میکنیم.

شاخص NDWI چیست و چه نسخههایی دارد؟
آب در طول موج مادون قرمز نزدیک (NIR) و مادون قرمز موج کوتاه (SWIR) تقریباً همه انرژی را جذب میکند، در حالی که در باند سبز کمی بازتاب دارد. گیاه برعکس، NIR را شدیداً بازتاب میدهد. بنابراین تفاضل نرمالشده سبز و NIR برای آب مثبت و برای گیاه و خاک منفی است. مشکل اینجاست که دو شاخص متفاوت با نام NDWI در منابع وجود دارد و قاطی کردن آنها خطای رایجی است:
| شاخص | فرمول | سنتینل ۲ | لندست ۸ و ۹ | کاربرد اصلی |
|---|---|---|---|---|
| NDWI (McFeeters، ۱۹۹۶) | (Green − NIR) / (Green + NIR) | (B3 − B8) / (B3 + B8) | (B3 − B5) / (B3 + B5) | پهنه آب آزاد |
| NDWI (Gao، ۱۹۹۶) یا NDMI | (NIR − SWIR) / (NIR + SWIR) | (B8 − B11) / (B8 + B11) | (B5 − B6) / (B5 + B6) | رطوبت گیاه، نه پهنه آب |
| MNDWI (Xu، ۲۰۰۶) | (Green − SWIR) / (Green + SWIR) | (B3 − B11) / (B3 + B11) | (B3 − B6) / (B3 + B6) | آب در مناطق شهری و ساختهشده |
| AWEI | ترکیب خطی چند باند | B2، B3، B8، B11، B12 | B2، B3، B5، B6، B7 | حذف سایه کوه و ساختمان |
NDWI یا MNDWI؟
مقاله اصلی McFeeters (1996) این شاخص را برای تصاویر لندست معرفی کرد. در مناطق طبیعی و دریاچههای بزرگ، NDWI مکفیترز کافی است. اما سطوح ساختهشده و خاک روشن هم گاهی NDWI مثبت میگیرند، به همین دلیل در شهرها و حاشیه دریاچههای شور (مثل پهنههای نمکی ارومیه) MNDWI بسیار بهتر عمل میکند. باند SWIR سنتینل ۲ (B11) ۲۰ متری است؛ پس MNDWI سنتینل ۲ را با تفکیک ۲۰ متر محاسبه کنید یا B3 را به ۲۰ متر بازنمونهگیری کنید. نکات همترازی در همترازی و بازنمونهگیری رستر آمده است.

نکات ویژه دریاچههای شور: نمونه دریاچه ارومیه
وسعت دریاچه ارومیه در دهه ۱۳۷۰ بیش از ۵ هزار کیلومتر مربع بود و در سالهای اوج بحران به بخش کوچکی از آن رسید؛ همین نوسان شدید، آن را به یکی از پرتکرارترین موضوعات پایاننامههای سنجش از دور ایران تبدیل کرده است. اما استخراج آب در این دریاچه سه دام دارد. اول، پوسته نمک سفید در باند سبز بسیار روشن است و با NDWI مکفیترز گاهی آب شمرده میشود؛ MNDWI این خطا را کم میکند چون نمک در SWIR هم روشن است. دوم، آب بسیار کمعمق و شور با رنگ قرمز (ناشی از جلبک و باکتریهای هالوفیل) در برخی فصول NIR بالاتری دارد و ممکن است حذف شود. سوم، مرز آب و گل در حاشیه جنوبی هفته به هفته جابهجا میشود؛ پس تصاویر سالهای مختلف را از یک ماه ثابت انتخاب کنید. ترکیب MNDWI با یک آستانه Otsu محلی و بررسی چشمی ترکیب رنگی B12-B8-B4 بهترین نتیجه را میدهد.
آمادهسازی تصویر
- بازتاب سطحی: سنتینل ۲ Level-2A یا لندست Collection 2 Level-2. راهنمای دانلود در دانلود تصاویر سنتینل و دانلود تصاویر لندست ۸.
- ابر و سایه ابر: سایه ابر بازتاب پایینی مثل آب دارد و مهمترین منبع خطای مثبت کاذب است. ماسک ابر را طبق حذف ابر سنتینل ۲ در گوگل ارث انجین اعمال کنید.
- برف و یخ: برف NDWI مثبت میگیرد. برای دریاچههای کوهستانی در زمستان از شاخص NDSI یا تصویر بدون برف استفاده کنید.
- سیستم مختصات: برای محاسبه مساحت حتماً تصویر را در UTM (مثلاً EPSG:32638 برای ارومیه و EPSG:32640 برای شرق کشور) نگه دارید.
محاسبه شاخص NDWI در ArcGIS Pro
- از زبانه Imagery ← Indices گزینه NDWI را انتخاب کنید؛ Green Band را ۳ و NIR Band را ۸ (سنتینل ۲) یا ۵ (لندست ۸) بدهید. یا در Raster Calculator بنویسید:
Float("B3" - "B8") / Float("B3" + "B8")
- برای MNDWI از
Float("B3" - "B11") / Float("B3" + "B11")استفاده کنید. - هیستوگرام خروجی را در Symbology ببینید؛ معمولاً دو قله دارد، یکی برای خشکی (منفی) و یکی برای آب (مثبت).
- با Con یا Reclassify ماسک دودویی بسازید:
Con("NDWI" > 0.05, 1, 0).
اگر با Raster Calculator و Field Calculator آشنا نیستید، ساخت اولین پروژه در ArcGIS Pro و آموزش Field Calculator را ببینید.
محاسبه NDWI در QGIS
("B03@1" - "B08@1") / ("B03@1" + "B08@1")
این عبارت را در Raster Calculator وارد کنید. برای ماسک آب در همان ابزار بنویسید ("NDWI@1" > 0.05) * 1. سپس با Raster ← Conversion ← Polygonize ماسک را برداری کنید و با Field Calculator و عبارت $area / 1000000 مساحت را به کیلومتر مربع بگیرید. مقدمات در آموزش کاربردی QGIS.
محاسبه NDWI و مساحت آب در گوگل ارث انجین
var s2 = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
.filterBounds(lake).filterDate('2024-06-01','2024-07-31')
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE',10)).median().clip(lake);
var mndwi = s2.normalizedDifference(['B3','B11']).rename('MNDWI');
var water = mndwi.gt(0).selfMask();
var area = water.multiply(ee.Image.pixelArea()).reduceRegion({
reducer: ee.Reducer.sum(), geometry: lake, scale: 20, maxPixels: 1e10});
print('Water area (km2)', ee.Number(area.get('MNDWI')).divide(1e6));
Map.addLayer(water, {palette:['0000ff']}, 'Water');
ee.Image.pixelArea() مساحت واقعی هر پیکسل را به متر مربع میدهد و مشکل سیستم مختصات را حل میکند. برای سری زمانی چندساله، همین کد را با map روی سالها اجرا کنید. مقدمات در آشنایی با گوگل ارث انجین و یک نمونه کاربردی در تشخیص تغییر سطح آب دریاچه چاد.
آستانهگذاری: صفر کافی نیست
آستانه نظری NDWI صفر است، اما در عمل بسته به کدورت آب، عمق، پوشش گیاهی آبزی و نوع خاک ساحل، آستانه بهینه بین ۰٫۲- تا ۰٫۳+ تغییر میکند. سه روش رایج:
| روش | توضیح | مزیت | محدودیت |
|---|---|---|---|
| آستانه ثابت (۰) | مقادیر مثبت = آب | ساده و قابل تکرار | در آب کدر و حاشیه گلآلود خطا دارد |
| آستانه تجربی | انتخاب با مقایسه بصری یا نمونهها | دقیق برای یک تصویر | ذهنی و غیرقابل تعمیم |
| Otsu | یافتن مقداری که واریانس بین دو کلاس را بیشینه میکند | خودکار و مبتنی بر هیستوگرام همان تصویر | اگر آب کمتر از ۵ تا ۱۰ درصد تصویر باشد خطا میدهد |
روش Otsu به زبان ساده
Otsu همه آستانههای ممکن را امتحان میکند و آستانهای را برمیگزیند که دو گروه حاصل (آب و غیرآب) بیشترین فاصله آماری را داشته باشند. ترفند مهم: Otsu را روی یک بافر اطراف دریاچه (مثلاً ۲ کیلومتر) اجرا کنید نه روی کل تصویر، تا سهم آب و خشکی متعادل باشد. در GEE هیستوگرام را با ee.Reducer.histogram() بگیرید و تابع Otsu را روی آن اجرا کنید؛ در پایتون از skimage.filters.threshold_otsu استفاده کنید. برای کار با رستر در پایتون، کار با دادههای رستری در پایتون را ببینید.
مثال عددی: محاسبه مساحت دریاچه یک سد
فرض کنید مخزن یک سد در زاگرس را در دو تاریخ با سنتینل ۲ و MNDWI بررسی میکنیم. پس از Otsu (آستانههای ۰٫۰۸ و ۰٫۱۱) و حذف لکههای کوچکتر از ۱ هکتار:
| تاریخ | آستانه Otsu | تعداد پیکسل آب (۲۰ متری) | مساحت (کیلومتر مربع) |
|---|---|---|---|
| اردیبهشت ۱۴۰۲ (پرآب) | ۰٫۰۸ | ۱۱۸٬۴۰۰ | ۴۷٫۳۶ |
| شهریور ۱۴۰۳ (کمآب) | ۰٫۱۱ | ۶۸٬۲۵۰ | ۲۷٫۳۰ |
| تغییر | — | ۵۰٬۱۵۰- | ۲۰٫۰۶- (۴۲٪ کاهش) |
محاسبه: هر پیکسل ۲۰ متری ۴۰۰ متر مربع است؛ 118400 × 400 = 47,360,000 m² = 47.36 km². اگر همین کار را با آستانه ثابت صفر انجام دهیم، مساحت اردیبهشت ۴۹٫۱ کیلومتر مربع میشود؛ حدود ۳٫۷ درصد بیشتر، چون حاشیه گلآلود هم آب شمرده شده است. این تفاوت را به عنوان عدم قطعیت روش در گزارش بیاورید.
85000 × 10 = 0.85 km²؛ یعنی مساحت ۴۷٫۳۶ را باید ۴۷٫۴ ± ۰٫۹ کیلومتر مربع گزارش کرد.از ماسک آب تا پلیگون و نقشه نهایی
- پاکسازی: با Majority Filter یا Sieve لکههای کوچک (استخرها، سایهها) را حذف کنید یا فقط بزرگترین پلیگون متصل را نگه دارید.
- تبدیل به برداری: Raster to Polygon در ArcGIS Pro (گزینه Simplify را برای خط ساحل نرمتر فعال کنید). نکات در تبدیل بین برداری و رستری.
- مساحت و محیط: با Calculate Geometry مساحت به کیلومتر مربع و محیط را بگیرید.
- مقایسه سالها: پلیگونهای چند تاریخ را با رنگهای متفاوت روی هم بگذارید و نوار خشکشده را با Erase استخراج کنید.
- صفحهآرایی: طبق آموزش طراحی لیاوت نقشه نقشه خط ساحل چندزمانه را با جدول مساحت تهیه کنید.
کدام داده برای پایش پهنه آبی؟
| داده | تفکیک | بازه زمانی | مناسب برای |
|---|---|---|---|
| Sentinel-2 | ۱۰ و ۲۰ متر | ۲۰۱۵ تاکنون، هر ۵ روز | مخازن سد، رودخانههای عریض، تالابهای کوچک |
| Landsat 5 تا 9 | ۳۰ متر | ۱۹۸۴ تاکنون | روند بلندمدت دریاچهها مثل ارومیه، بختگان و هامون |
| JRC Global Surface Water | ۳۰ متر | ۱۹۸۴ تا ۲۰۲۱ (ماهانه و سالانه) | نقشه آماده فراوانی وقوع آب؛ مقایسه سریع |
| Sentinel-1 (رادار) | ۱۰ متر | ۲۰۱۴ تاکنون، مستقل از ابر | سیل، تالابهای ابری شمال کشور |
| MODIS | ۲۵۰ و ۵۰۰ متر | ۲۰۰۰ تاکنون، روزانه | دریاچههای خیلی بزرگ و پایش روزانه |
محصول JRC در GEE با شناسه JRC/GSW1_4/GlobalSurfaceWater در دسترس است و لایه occurrence آن نشان میدهد هر پیکسل در چند درصد مشاهدات ۳۷ سال گذشته آب بوده است. این لایه برای تعیین «آب دائمی» و «آب فصلی» و همچنین کنترل نتیجه NDWI خودتان بسیار مفید است.
سری زمانی مساحت آب: پایش چندساله در گوگل ارث انجین
برای تحلیل روند، مساحت آب را برای یک ماه ثابت (مثلاً شهریور، کمآبترین زمان) در هر سال محاسبه کنید تا اثر فصل حذف شود. خلاصه کد:
var years = ee.List.sequence(2017, 2024);
var areas = ee.FeatureCollection(years.map(function(y) {
var img = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED').filterBounds(lake)
.filter(ee.Filter.calendarRange(y, y, 'year')).filter(ee.Filter.calendarRange(8, 9, 'month'))
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 10)).median();
var w = img.normalizedDifference(['B3','B11']).gt(0.05);
var a = w.multiply(ee.Image.pixelArea()).reduceRegion(ee.Reducer.sum(), lake, 20, null, null, false, 1e10);
return ee.Feature(null, {year: y, km2: ee.Number(a.values().get(0)).divide(1e6)});
}));
print(ui.Chart.feature.byFeature(areas, 'year', 'km2'));
نمونه خروجی برای مخزن فرضی ما:
| سال (شهریور) | مساحت (کیلومتر مربع) | یادداشت |
|---|---|---|
| ۲۰۱۸ | ۲۲٫۸ | پس از چند سال خشک |
| ۲۰۱۹ | ۴۱٫۵ | بعد از بارشهای سیلآسای ۱۳۹۸ |
| ۲۰۲۱ | ۲۶٫۱ | خشکسالی ۱۴۰۰ |
| ۲۰۲۴ | ۲۷٫۳ | کمی بالاتر از ۲۰۲۱ |
برای توضیح نوسانها، سری مساحت را با بارش سالانه حوضه بالادست مقایسه کنید؛ روشهای شاخص بارش را در ارزیابی خشکسالی بر اساس دادههای بارش و تحلیل سری زمانی را در کاربرد گوگل ارث انجین در سریهای زمانی ببینید.
اعتبارسنجی نقشه پهنه آبی
نقشه آب هم مثل هر نقشه طبقهبندیشده دیگری نیاز به ارزیابی دقت دارد. حدود ۲۰۰ نقطه تصادفی طبقهبندیشده (نیمی در آب، نیمی در خشکی و دستکم ۵۰ نقطه در نوار ۱۰۰ متری ساحل) بگیرید و وضعیت واقعی هر نقطه را از تصویر با تفکیک بالا همتاریخ تعیین کنید. صحت کلی نقشههای آب معمولاً بالای ۹۵ درصد است، اما این عدد گمراهکننده است چون بیشتر نقاط در وسط آب یا خشکیاند؛ دقت واقعی را در نوار ساحلی گزارش کنید. محاسبه ماتریس خطا و کاپا را در ضریب کاپا در سنجش از دور با مثال عددی آوردهایم.
NDWI در پایش سیل
برای ثبت وسعت سیل، NDWI یا MNDWI تصویر بعد از سیل را با تصویر قبل مقایسه کنید: پیکسلهایی که قبلاً آب نبودند و اکنون آباند، پهنه سیلگرفتهاند. این نقشه برای اعتبارسنجی پهنهبندی سیلاب با GIS و HEC-RAS بسیار ارزشمند است. مشکل اصلی: در هنگام سیل آسمان معمولاً ابری است. راه حل، تصاویر راداری سنتینل ۱ است که از ابر عبور میکنند؛ آب آرام در رادار بسیار تیره دیده میشود (بازپراکنش VV کمتر از حدود ۱۸- دسیبل). مرجع خوب برای این روش، راهنمای UN-SPIDER برای نقشه سیل است.
ارتباط با سایر شاخصها
NDWI مکمل محاسبه شاخص NDVI است: یکی آب را برجسته میکند و دیگری گیاه را. در تهیه نقشه کاربری اراضی هر دو را به عنوان باند کمکی اضافه کنید تا کلاس آب و سایه کوه بهتر تفکیک شوند.
چکلیست تحویل پروژه پهنه آبی
- شاخص استفادهشده با فرمول، باندها و منبع علمی.
- تاریخ دقیق تصاویر و دلیل انتخاب ماه.
- روش و مقدار آستانه برای هر تاریخ.
- حداقل اندازه لکه حذفشده و روش پاکسازی.
- مساحت هر تاریخ با عدم قطعیت مرزی و نتیجه ارزیابی دقت.
- نقشه خط ساحل چندزمانه و فایل برداری در سیستم UTM.
خطاهای رایج در استخراج پهنه آبی و راه حل
| نشانه | علت | راه حل |
|---|---|---|
| سایه کوه و ساختمان آب شده | بازتاب پایین مشابه آب | AWEIsh، ماسک شیب بیش از ۱۰ درجه با DEM |
| سقفها و جادهها آب شدهاند | NDWI مکفیترز در شهر | MNDWI به جای NDWI |
| آب کمعمق و کدر حذف شده | بازتاب NIR بالاتر به دلیل رسوب | کاهش آستانه یا Otsu محلی |
| پهنه نمکی ارومیه آب شده | بازتاب بسیار بالای سبز | MNDWI و بررسی با B12؛ نمک در SWIR روشن است |
| مساحت با واقعیت نمیخواند | محاسبه در سیستم جغرافیایی | UTM یا pixelArea؛ رفع مشکل سیستم مختصات |
| تالاب پوشیده از نی دیده نمیشود | گیاه روی آب NDWI را منفی میکند | ترکیب با رادار یا طبقهبندی |
جمعبندی و نکات کلیدی
- شاخص NDWI مکفیترز = (Green − NIR) / (Green + NIR)؛ سنتینل ۲: B3 و B8.
- در مناطق شهری و شور، MNDWI با باند SWIR دقیقتر است.
- آستانه را با Otsu روی بافر اطراف آب تعیین کنید، نه فقط صفر.
- مساحت را در UTM یا با pixelArea حساب و عدم قطعیت مرزی را گزارش کنید.
- برای سیلهای ابری، از رادار سنتینل ۱ کمک بگیرید.
پرسشهای متداول درباره شاخص NDWI
NDWI چیست و چه کاربردی دارد؟
تفاوت NDWI و MNDWI چیست؟
آستانه مناسب NDWI برای جدا کردن آب چقدر است؟
چگونه مساحت دریاچه را از NDWI محاسبه کنیم؟
NDWI در سنتینل ۲ با کدام باندها محاسبه میشود؟
آیا با شاخص NDWI میتوان حجم آب مخزن را محاسبه کرد؟
مطالب مرتبط
پایش آب و سیل را حرفهای انجام دهید
در دوره RGIS Pro (مسیر ArcGIS Pro گیسلند) کار با شاخصهای طیفی، آستانهگذاری، تبدیل رستر به برداری، محاسبه مساحت و تهیه نقشه نهایی را روی دادههای واقعی دریاچهها و سیلابهای ایران تمرین میکنید.
- ۴۰ ساعت آموزش مهارتمحور و پروژهمحور ArcGIS Pro، از مقدماتی تا پیشرفته
- یک سال پشتیبانی و رفع اشکال رایگان پس از پایان دوره
- تمرین روی دادههای واقعی ایران؛ مناسب پایاننامه، پروژه سازمانی و بازار کار
- دسترسی مستقیم به مدرس: دکتر سعید جویزاده
مشاهده دوره RGIS Pro (ArcGIS Pro)سطح پیشرفتهتماس: ۰۹۱۲ ۰۴۳ ۸۸۷۴واتساپ: ۰۹۳۸ ۲۲۵ ۲۷۷۴
فرم ثبتنام و مشاوره رایگان دوره RGIS Pro
نام و شمارهتان را بگذارید تا کارشناسان GISLAND برای مشاوره رایگان، تعیین سطح و زمانبندی کلاس با شما تماس بگیرند. اطلاعات شما فقط برای همین تماس استفاده میشود.
ترجیح میدهید مستقیم صحبت کنید؟ تماس ۰۹۱۲۰۴۳۸۸۷۴ یا ۰۹۳۸۲۲۵۲۷۷۴ · واتساپ ۰۹۳۸۲۲۵۲۷۷۴

بدون دیدگاه