دراسة لتوسع مدينة القاهرة بواسطة صور الأقمار الصناعية وبرنامج QGIS

في هذا الدرس سنقوم بعملية تصنيف باستخدام خوارزميات مختلفة باستخدام بيانات مختلفة باستخدام اداة تصنيف جديدة باستخدام برنامج الـ QGIS باستخدام الإضافة Semi-Automatic Classification تحت الرابط التالي

وهو ملحق ل Qgis يسمح بالتصنيف شبه التلقائي لصور الاستشعار عن بعد. كما أنه يوفر العديد من الأدوات لتحميل الصور المجانية (لاندسات، سنتينل-2، سنتينل-3، أستير، موديس)، والمعالجة المسبقة للصور(انشاء موزاييك وعرض الصور انشاء تراكيب من القنوات ، المعالجة اللاحقة للتصنيفات،

وسأقوم في هذا الدرس بعمل مشروع مراقبة لمدينة القاهرة ودراسة توسع المدينة من عام 1984 حتى عام 2017 باستخدام أرشيف القمر لاند سات

  • لاند سات 5 لعام 1984.02.15
  • لاندسات 7 لعام 2001.08.26
  • لاندسات 8 لعام 2017.02.03

وساقوم بتصنيف الصور باستخدام خوارزميات تصنيف مختلفة

  1. Minimum Distance
  2. Maximum Likelihood
  3. Spectral Angle Mapping

والغاية من هذه الدراسة

  • استخدام الاضافة Semi-Automatic Classification وإظهار فعاليتها في تصنيف الصور ومعالجتها
  • التعرف علي بيانات القمر لاند سات 7 ولاندسات 5 التي لها بناء مختلف عن بيانات القمر لاندسات 8
  • معرفة اتجاه تمدد المناطق العمرانية لمدينة القاهرة خلال 30 سنة
  • مقارنة خوارزميات التصنيف المختلفة واختيار النتائج الاكثر دقة

لا تنسى متابعتنا على صفحة الفيسبوك

خطوات العمل

تحميل الاضافة Semi-Automatic Classification

فتظهر النافذة التالية

بعدها نقوم بتحميل الصور من أرشيف لاندسات وبناء الصورة ويتم ذلك مباشرة من خلال برنامج Qgis كما في الدرس السابق فيضان نهر النيل حيث كانت البيانات المستخدمة آنذاك هي بيانات القمر سينتينيل 2 وطريقة التحميل هي تقريبا نفسها مع اختيار بيانات التحميل للقمر لاندسات الرابط

نقوم بتحميل الصورة وانشاء طبقة لل training input حيث ستكون الطبقة التي ندخل بها

المضلعات التي تمثل العناصر التي سيتم تصنيف الصورة وفقا لها

سنقوم بتصنيف الصورة الي :

  • مناطق سكنية
  • مياه
  • غطاء اخضر
  • اراضي رملية (1)
  • اراضي رملية (2)

اختيار الـ Training area من الخطوات الهامة لعمل تصنيف جيد لذلك يجب اختيار المضلعات بشكل دقيق حيث يكون كل مضلع مكون من 50 بيكسل على الأقل وموزعة في كافة انحاء الصورة والمضلعات المختارة لا تحتوي مزيج بين عناصر مختلفة

وسنستخدم لذالك الاداتين

  1. Create ROI Polygon
  2. Activate ROI Pointer

تعتبر الاداة Activate ROI Pointer من اهم الايضاقة لل Qgis حيث تسمح باختيار المضلعات بدقة كبيرة دون مزج حيث تعتمد علي المسافة الطيفية بين البيكسلات لكل حزمة مفردة وهذا ماتوضحة الصورة التالية

في الصور السابقة المسافة الطيفية هي 0.1 وعند الضغط علي البيكسل الذي له قيمة تساوي 0.4 يقوم باختيار جميع البيكسلات التي لها قيمة 0.4±0.1

نستخدم الاداة Activate ROI Pointer لعمل مضلع للماء كما تظهر الصورة اللاحقة

ونلاحظ انه لدينا اربعة حقول في training input يجب ان نقوم بملئها

MC_ID الحقل الرئيسي وياخد القيمة واحد للمضلعات التي تمثل الماء واثنين للمضلعات التي تأخذ المناطق السكنية

وثلاثة للمناطق الخضراء وهكذا نقوم بتغييره بعد اختيار عشرة مضلعات تمثل العنصر الذي يتم تصنيفه

MC_Info تكتب الوصف للحقل الرئيسي مثلا ماء او منطقة سكنية ومساحات خضراء او اراضي مكشوفة الخ

C_ID الحقل الثانوي وهذا الحقل يتزايد بشكل اوتوماتيكي عند انشاء المضلع جديد

C_info نكتب توصيف المضلع المختار مثلا اذا كنا نختار مضلعات لعنصر الماء نكتب هل المضلع يمثل مياه بحيرة او مياه نهر أو مياه البحر او مياه ضحلة حيث نستطيع التصنيف وفقا للحقل الثانوي او الحقل الرئيسي والتوصيف

يسهل على تتبع الأخطاء واستبعاد المضلعات التي تحمل أخطاء .

ثم نقوم باختيار المضلع الثاني للماء كما تظهر الصورة التالية مع الانتباه إلى ضبط المسافة الطيفية Dist التي تتحكم

بدقة الاختيار حيث تكون القيمة صغير لعنصر متجانس مثل الماء وكبيرة نوعا ما للمساحات الخضراء المكونة من نباتات مختلفة تظهر انعكاسية مختلفة أو للمناطق السكنية

نقوم بإنشاء المضلع التالي بنفس الطريقة حتي نصل الي عشرة مضلعات ويجب أن تكون هذه المضلعات موزعة علي كافة انحاء الصورة بحيث يكون كل مضلع أكبر من 50 بيكسل ولا يحتوي على مزيج ( أي مضلع الماء يحتوي على عنصر الماء فقط واستخدام ROI pointer Activate

يضمن الحصول علي مضلع دون مزيج من عناصر اخرى )

كما تظهر الصورة التالية

نستطيع التعرف على الخصائص الانعكاسية لكل مضلع فنحصل علي قيمة الانعكاس لقيمة البيكسل لكل قناة ويكن عرضها علي شكل خط بياني وعرض قيمة الخطأ ايضا

من خلال تأشير المضلع المختار والضغط علي

Add highlight signatures to spectral signature plot

فنستطيع رسم الخطوط البيانية لقيم الانعكاسية لكل مضلع حسب الطول الموجي لقنوات الصورة ويتم اظهار الخطأ(الانحراف المعياري) والتداخل بين القيم الانعكاسية للمضلعات الاخرى.

توضح الصورة التالية القيم الانعكاسية لاربع عناصر مختلفة (مناطق سكن ,مساحات خضراء ,ماء, اراضي مكشوفة ) ونلاحظ ان الخطاء المتوسط التربيع للمناطق العمرانية كبير ( المجال باللون البنفسجي ) ويتداخل مع المناطق الرملية

ملاحظة

نستطيع تقيم المضلعات المختارة لأي عنصر ( للماء مثلا ) حيث تكون الخطوط البيانية والمضلعات التي تمثل عنصر واحد متشابهة جدا و متطابقة

ملاحظة

البرنامج لايستجيب أحيانا لذلك يجب حفظ العمل لأنه في حال البرنامج لايستجيب تستطيع اغلاق البرنامج واعادة فتحه والاستمرار .

وكذلك نستطيع اخراج قيم الانعكاسية كجداول

بعد ان نقوم بعمل عشر مضلعات تمثل الماء نقوم بعمل training Area للعنصر التالي المناطق السكنية

ونقوم بعدها بتغيير قيمة الحقل الرئيسي MC_ID الي 2 اما الحقل C_ID يتزايد بشكل اتوماتيكي ونقوم باختيار عشرة حقول للمناطق السكنية أيضا موزعة على كافة انحاء الصورة بنفس الطريقة السابقة ولكنني أفضل استخدام

Create ROI Polygon للمناطق السكنية حيث المناطق السكنية تكون مزيج من عناصر بناء مختلفة

ونقوم باختيار كذلك عشرة مضلعات للغطاء الأخضر حيث نقوم بزيادة MC_ID =3

ونلاحظ أن قيمة C_ID اصبحت 21 حيث كنا قد أنشأنا عشرة مضلعات للعنصر السابق (المناطق السكنية )

كما تظهر الصورة التالية

وكذلك عشرو مضلعات للاراضي القاحلة وهنا ساقوم بتصنيف الاراضي القاحلة الى قسمين

  • اراضي قاحلة ( 1)
  • اراضي قاحلة ( 2 ) التي تظهر بلون ابيض فاتح في العرض CIR

وسأقوم هنا بإظهار القيم الانعكاسية المنطقة القاحلة الأولى والمناطق القاحلة الثانية حتى نلاحظ الفرق بين القيم الانعكاسية بين هذين العنصرين .

فنحصل على النتائج التالية

وان تقسيم المنطقة إلى منطقتين للتصنيف يؤدي إلى زيادة الدقة حيث تزداد الدقة بزيادة عدد العناصر التي يتم تصنيف الصورة وفقا لها .

تصنيف الأراضي القاحلة (1)

كما سبق نقوم باختيار عشر مضلعات موزعة علي كافة انحاء الصورة باعطاء الحقل الرئيسي القيمة اربعة

MC_ID =4

الأراضي القاحلة (2)

ونعيد المعالجة السابقة للأراضي القاحلة 2

الخطوة الثانية التصنيف

اضغط على زر Macroclasses ونقوم بوضع الالوان والوصف للصورة وحاول تجنب اللغة العربية حيث البرنامج قد لا يستطيع قراءة اللغة العربية وقد استخدمتها فقط للتوضيح

للقيام بالتصنيف نضغط على classification algorithm فتظهر النافذة التالية

وهنا تستطيع اختيار طريقة التصنيف وإدخال عتبة التصنيف بالنسبة الي كانت أفضل النتائج مع

Spectral Angle Mapping واستخدام عتبة 60 حيث حيث عندما تتجاوز نسبة الخطأ هذه العتبة لا يتم تصنيف البيكسل حيث يوجد بالنتائج أيضا حقل للعناصر الغير مصنفة

نستطيع اختبار التصنيف بإخراج تصنيف جزئي لمنطقة صغيرة

بعدها نقوم بالتصنيف حيث يقوم البرنامج بإخراج الصورة مع الألوان ويقوم باخراج الصورة المصنفة ايضا على شكل shapfile وكذلك تقرير التصنيف حيث يخرج عدد البيكسلات لكل صنف ونسبتها

  1. في حال عمل ماسك لاستثناء بعض المناطق من التصنيف ونصادف هذا الحالة عند التصنيف في المناطق بالقرب من المسطحات المائية الكبيرة حيث يتم استثنائها للحصول علي نتائج افضل
  2. نحصل علي المنطقة المصنفة بالصيغة الشعاعية ايضا
  3. أحصل على تقرير التصنيف حيث يتضمن عدد البيكسلات ونسبتها لكل صنف
  4. للوضع مسار الحفظ والبدء بالتصنيف

بعدها نحصل على النتائج التالية بالإضافة إلى البيانات بالصيغة الشعاعية وتقرير التصنيف

بعدها نقوم بتصنيف الصور لمدينة القاهرة من عام 2000 باستخدام بيانات القمر الصناعي لاندسات 7 مع العلم ان بيانات القمر لاندسات سبعة لها بناء مختلف عن بيانات القمر لاندسات 8

بيانات لانسات 7

chrome-extension://ngpampappnmepgilojfohadhhmbhlaek/captured.html?back=1

بيانات لاندسات 8

Landsat 8 Bands

ونعيد خطوات التصنيف السابقة للحصول على البيانات لاندسات 7 فنحصل على النتائج التالية

وبعدها نقوم بتصنيف الصورة من عام 1984 ونعيد التصنيف وحاول اثناء تصنيف الصور القديمة اختيار المضلعات بعناية وتوزيعها بشكل جيد و تحميل اغلب القنوات ( القنوات التي تفيد في عملية التصنيف )

بعد تصنيف الصور الثلاث نستطيع أن نبيت تغير الغطاء النباتي والمناطق العمرانية من 1984 حتى عام 2017

حيث يظهر اللون الزهري العمران في عام 1984 وتستطيع الحصول على نتائج أفضل بكثير من خلال اختيار المضلعات بدقة و وزيادة الدقة الراديومترية من خلال استخدام عدد أكبر من القنوات

اللون الأخضر يمثل العمران في عام 2000 وقد استخدمت بيانات لاند سات 7

اللون الأحمر الغامق يمثل مناطق العمران في عام 2017 باستخدام بيانات لاندسات 8

نستطيع اخراج التغيرات كخريطة وحساب مساحات التغير وتصنيف المدينة حسب المناطق الحديثة وتحديد اتجاه توسع المدينة خلال الفترة الزمنية السابقة حيث نلاحظ التوسع في المناطق الغربية كان على حساب المساحات الخضراء أما التوسع الأكبر كان باتجاه المناطق الشرقية الصحراوية

الكاتب: المهندس مارتن إيليا