الأسئلة الشائعة

أسئلة عامة

لديّ مشكلة وأحتاج إلى المساعدة.

نشر سؤال باتّباع هذا الدليل، مع تقديم أكبر قدر ممكن من المعلومات (راجِع دليل Stack Overflow لطرح أسئلة جيدة). ويعني ذلك عادةً ما يلي:

  • إرسال رابط إلى نص برمجي في "محرّر الرموز" (انقر على الزر "الحصول على الرابط" للحصول عليه)

  • مشاركة أي مواد عرض مطلوبة لتشغيل النص البرمجي

  • بالنسبة إلى مهام الدُفعات التي تعذّر تنفيذها، يجب الإبلاغ عن رقم تعريف المهمة التي تعذّر تنفيذها. تكون معرّفات المهام على النحو التالي: 4C25GIJBMB52PXTEJTF4JLGL. ويمكن العثور عليها في علامة التبويب "المهمة" في "محرّر التعليمات البرمجية". مزيد من المعلومات

أين يمكنني الاطّلاع على معلومات حول بنية Earth Engine؟

يمكنك الاطّلاع على هذه الورقة: Gorelick et al. 2017.

اطّلِع على صفحتَي EDU ومراجع التدريب.

يمكنك الاطّلاع على دورة EE المجانية هذه التي يقدّمها "أوجافال غاندي"، والتي تتضمّن فيديو يتضمّن مقدمة عن الاستشعار عن بُعد.

برمجة Earth Engine

ما هي بعض أخطاء الترميز الشائعة؟

راجِع دليل تصحيح الأخطاء.

لماذا تظهر لي رسالة الخطأ "... ليس دالة"؟

يحدث هذا الخطأ عندما يتعذّر على Earth Engine العثور على الطريقة التي تم استدعاؤها. يُرجى مراجعة الأسباب الشائعة التالية:

التدقيق الإملائي أو الحساسية لحالة الأحرف: تكون الطرق حساسة لحالة الأحرف. تحقَّق من الإملاء مقارنةً بمرجع واجهة برمجة التطبيقات.

Error: img.normalizedDiff(...) -> Correct: img.normalizedDifference(...)

عدم توفّر عمليات تحويل الأنواع: القيم التي يتم عرضها من دوال مثل .get() هي مثيلات ee.ComputedObject عامة ويجب تحويلها بشكل صريح. راجِع مقالة تحويل نوع الكائن غير المعروف.

Error: dict.get('val').add(5) -> Correct: ee.Number(dict.get('val')).add(5)

الخلط بين طرق العميل والخادم: تأكَّد من عدم استخدام طرق JavaScript أو Python العادية (مثل .push() أو .append()) على عناصر Earth Engine. اطّلِع على تجنُّب الخلط بين وظائف العميل والخادم.

Error: list.push(4) or list.append(4) -> Correct: list.add(4)

الطُرق غير المتاحة: إذا كان نوع العنصر محدّدًا بشكل صحيح وكانت الطريقة متوفّرة في المستندات أو كانت تعمل في السابق ولكنها لا تعمل الآن، يُرجى الإبلاغ عن خطأ.

لماذا لا يمكنني استخدام العمليات الحسابية الأساسية مثل ee.Image("image") * 2؟

في EE، يجب عدم الخلط بين العناصر أو العمليات من جهة الخادم ومن جهة العميل. يتم تنفيذ جميع العمليات على عناصر EE من جهة الخادم، وأي عمليات حسابية من جهة العميل لن تؤدي الغرض المطلوب منها. يمكنك الاطّلاع على هذه الصفحة لمزيد من التفاصيل.

كيف يمكنني استخدام حلقات for أو عبارات if/else؟

تتم برمجة Earth Engine باستخدام لغة وظيفية، لذا يجب التعبير عن الحلقات والعمليات الشرطية باستخدام مفاهيم مكافئة مثل map أو filter. يمكنك الاطّلاع على هذه الصفحة لمزيد من التفاصيل.

كيف يمكنني عرض تصنيفات نصية في صورتي أو الفيديو؟

لا تتوفّر ميزة مدمجة لتصنيفات النصوص، ولكن يمكنك إجراء ما يلي:

هل يمكنني استخدام بعض لوحات الألوان العادية؟

استخدِم حزمة JS تابعة لجهة خارجية ee-palettes.

كيف يمكنني إنشاء موقع إلكتروني خاص بي يستخدم Earth Engine؟

يمكنك استخدام تطبيقات Earth Engine للتطبيقات الأساسية، أما في الحالات الأكثر تعقيدًا، يمكنك إنشاء تطبيقات App Engine تستند إلى Earth Engine.

كيف تعمل معرّفات الخرائط؟

معرّفات الخرائط (يُطلق عليها mapid في جميع أنحاء واجهة برمجة التطبيقات) هي مفاتيح تتيح للعملاء جلب مربّعات الخرائط. كل معرّف هو قيمة تجزئة تم إنشاؤها من خلال تقديم تعبير صورة إلى نقطة النهاية getMapId. معرّفات النتائج هي مفاتيح تشير إلى كل من تعبير الصورة وبيانات اعتماد المستخدم التي سيتم استخدامها لإنشاء مربّعات في مرحلة لاحقة.

يتضمّن طلب مربّعات الخرائط تحديد الموقع الجغرافي للمربّع (x وy وzoom) بالإضافة إلى mapid (مفتاح الصورة وبيانات الاعتماد). يمكن إعادة استخدام رقم التعريف نفسه لتحميل العديد من مربّعات الخرائط. لا توجد قيود على إعادة استخدام مفاتيح mapid، ولكن تنتهي صلاحيتها بعد بضع ساعات. لا ننشر أُطرًا زمنية محددة بشأن مدة استمرارها، ولكن يجب أن تكون أي شفرة تكتبها قادرة على التعامل مع انتهاء صلاحية المعرّف.

يتضمّن إنشاء هذه المعرّفات تخزين كمية صغيرة من البيانات والتحقّق من صحة بيانات الاعتماد، لذا من الأفضل إعادة استخدامها لأطول فترة ممكنة. ليس هناك حصة API مرتبطة تحديدًا بنقطة النهاية getMapId، ولكن من المحتمل أن يكون هناك خطأ في أي سير عمل يتضمّن إنشاء عناصر mapid بمعدّل قريب من معدّل استرداد المربّعات. لا يتضمّن Earth Engine نقطة نهاية لواجهة برمجة التطبيقات تتيح إزالة هذه المعرّفات أو إدراجها أو إدارتها، لأنّها موارد مؤقتة.

لماذا تطبع الدالة ee.Algorithms.If() كلاً من الحالة الصحيحة والخاطئة؟

function a() { print("true"); }
function b() { print("false"); }
// Prints 'true' and 'false'.
ee.Algorithms.If(true, a(), b());

تعمل خوارزمية If() تمامًا مثل أي خوارزمية أخرى على Earth Engine، إذ يجب تقييم جميع وسيطاتها قبل أن تتمكّن الخوارزمية نفسها من العمل. تحصل الخوارزمية على نتائج trueCase وfalseCase، ثم تختار نتيجة واحدة وتعرضها استنادًا إلى الوسيطة condition، ولكن كان يجب تنفيذ كلا المسارين حتى يتم تمرير هاتين القيمتين إلى الخوارزمية في المقام الأول.

تظهر لي رسالة الخطأ "يتجاوز حجم حمولة الطلب الحدّ المسموح به"

تحاول إرسال طلب كبير جدًا إلى Earth Engine، ويحدث ذلك عادةً عندما يستخدم الرمز البرمجي الكثير من حلقات "for" من جهة العميل أو ينشئ FeatureCollection من العديد من عناصر الأشكال الهندسية. في الحالة الأخيرة، بدلاً من إنشاء مثل هذه الأشكال الهندسية في النص البرمجي، يمكنك إنشاء ملف CSV يحتوي عليها ثم تحميله إلى عنصر جدول.

ما الفرق بين ee.Image.clip() وee.Filter.bounds()؟

يمكنك الاطّلاع على سلسلة المحادثات هذه على GIS Stack Exchange. تخفي الدالة ee.Image.clip() وحدات البكسل التي لا تتقاطع مع ee.Geometry أو ee.Feature معيّنَين، ما يجعلها شفافة في التصورات ويستبعدها من العمليات الحسابية. يمكنك التفكير في الأمر على أنّه اقتصاص لوحدات البكسل من صورة.

تُصفّي الدالة ee.Filter.bounds() الكائنات ee.Image من ee.ImageCollection استنادًا إلى تقاطع الصورة مع ee.Geometry أو ee.Feature. وتُستخدَم هذه الدالة للحدّ من نطاق التحليل ليشمل فقط الصور التي تتقاطع مع منطقة معيّنة، ما يساعد في تحسين التعبيرات.

كيف يمكن تحويل وحدات بكسل الصور إلى مجموعات عناصر، مع عنصر واحد لكل وحدة بكسل؟

استخدِم الدالة ee.Image.sample(). يمكنك الاطّلاع على أمثلة الاستخدام في صفحة المرجع الخاصة بواجهة برمجة التطبيقات للدالة.

ما هو الفرق بين اشتراكَي ee.ImageCollection.merge() وee.ImageCollection.combine()؟

تدمج الدالة ee.ImageCollection.merge() كل الصور من مجموعتين في مجموعة واحدة، بغض النظر عمّا إذا كانت الصور المعنية تتضمّن نطاقات أو بيانات وصفية أو نظام إحداثيات أو مقياسًا متطابقًا. وهي عبارة عن اتحاد مجموعتين. وتجمع الطريقة combine() نطاقات الصور المتطابقة من مجموعتين في مجموعة واحدة. وتتشارك الصور المتطابقة المعرّف نفسه (السمة system:index). وهي عبارة عن ربط داخلي لمجموعتين استنادًا إلى معرّف الصورة، حيث يتم دمج نطاقات الصور المتطابقة. وبالنسبة إلى الصور المتطابقة، يتم إلحاق نطاقات الصورة الثانوية بالصورة الأساسية (الكتابة فوق البيانات اختيارية). وإذا لم تكن هناك صور متطابقة، يتم عرض مجموعة فارغة.

كيف يمكن فلترة مجموعات الصور حسب فواصل زمنية متعددة؟

يمكنك الاطّلاع على سلسلة المحادثات هذه على GIS Stack Exchange. يمكنك استخدام merge() عدة مجموعات معًا أو استخدام ee.Filter.or().

كيفية إنشاء مربّع إحاطة حول نقطة معيّنة

// Buffer the point by a chosen radius and then get the bounding box.
var LNG = -117.298;
var LAT = 45.162;
var point = ee.Geometry.Point([LNG, LAT]);
var buffer = point.buffer(30000); // half of box width as buffer input
var box = buffer.bounds(); // draw a bounding box around the buffered point
Map.centerObject(box);
Map.addLayer(point);
Map.addLayer(box);

// Map the buffer and bounds procedure over a point feature collection.
var pointCol = ee.FeatureCollection([
  ee.Feature(ee.Geometry.Point([LNG + 1, LAT])),
  ee.Feature(ee.Geometry.Point([LNG - 1, LAT]))
]);
var boxCol = pointCol.map(function(feature) {
  var box = feature.buffer(30000).bounds();
  return feature.setGeometry(box.geometry());
});
Map.addLayer(boxCol);

Data Catalog

هل يمكنك إضافة مجموعة البيانات X؟

يمكنك الإبلاغ عن خطأ في طلب مجموعة بيانات باتّباع دليل طلب مجموعة البيانات.

يمكنك أيضًا تحميل البيانات إلى مجلدك الرئيسي في Earth Engine. اطّلِع على استيراد بيانات الصور النقطية واستيراد بيانات الجداول.

تتوفّر نسخة جديدة من مجموعة بيانات حالية

يمكنك الإبلاغ عن خطأ في مجموعة البيانات باتّباع دليل طلب مجموعة البيانات، مع الإشارة إلى أنّك تطلب تعديل مجموعة البيانات.

عدم تعديل مجموعة بيانات حالية أو عدم توفّر مواد عرض فيها

قبل الإبلاغ عن مشكلة، تحقَّق، إذا أمكن، من أنّ الأصول المحدّدة متوفّرة فعلاً على موقع مقدّم مجموعة البيانات. يمكنك الاطّلاع على الدليل حول الصور غير المتوفّرة لمزيد من التفاصيل.

إذا كنت تبحث عن مادة عرض من خلال فلترة ImageCollection، تأكَّد من أنّ الفلاتر ليست محدودة جدًا.

يُرجى الانتباه إلى ما يلي على وجه الخصوص:

  • لم تنتج وكالة الفضاء الأوروبية بيانات Sentinel-2 SR (المستوى 2) للمشاهد المبكرة من المستوى 1.

  • لا تتوفّر بيانات Landsat على مستوى العالم قبل عام 2000.

مجموعة بيانات حالية تحتوي على قيم خاطئة

نشر مشاركة في منتدى المطوّرين تضمين نص برمجي يكبّر دقة مادة العرض الأصلية ويوضّح القيم الخاطئة يُرجى توضيح المكان الذي رصدت فيه القيمة البديلة.

أين يمكنني طرح أسئلة أخرى حول مجموعات البيانات؟

إذا كانت لديك أسئلة حول مجموعات بيانات وكالة ناسا، يمكنك الاطّلاع على منتدى بيانات الأرض التابع لوكالة ناسا.

للحصول على إجابات عن أسئلة حول مجموعات الأدوات التي تعمل على مجموعات بيانات Copernicus، يُرجى الاطّلاع على منتديات S1 وS2 وS3.

ما هو حجم كتالوج EE؟

اعتبارًا من تشرين الأول (أكتوبر) 2023، تحتوي القائمة على أكثر من 1, 000 مجموعة بيانات، ويبلغ حجمها على القرص أكثر من 90 بيتابايت (بعد أخذ الضغط بدون فقدان البيانات في الاعتبار).

ما هو معدّل تكرار تعديل البيانات في "التجربة المخصّصة"؟

عادةً، يتم تعديل جميع مجموعات البيانات الجارية مرة واحدة على الأقل يوميًا (مع أنّ بعض مجموعات البيانات هذه لا تتضمّن بيانات جديدة كل يوم)، ويتم تعديل بعض مجموعات البيانات عدة مرات في اليوم، ولكن لا توجد سياسة تضمن توفّر أحدث مواد العرض في الكتالوج.

كيف يمكنني عرض محتوى كتالوج EE آليًا؟

يتم تصدير قائمة مجموعات البيانات بتنسيق STAC إلى حزمة Google Cloud Storage gs://earthengine-stac. ويحمل ملف الإدخال الاسم catalog.json.

هل يمكنني استخدام بيانات "خرائط Google" أو صورها لأغراض التحليل؟

لا ترخّص Google بيانات الخريطة الأساسية أو تبيعها لأغراض التحليل.

كيف يمكنني معرفة تاريخ استيعاب مادة عرض؟

خاصية مادة العرض 'system:version' هي الطابع الزمني للاستيعاب، ويتم تنسيقه على شكل ميكروثانية منذ بدء حقبة Unix. في ما يلي مثال يحوّل الطابع الزمني للاستيعاب الخاص بصورة Landsat إلى تنسيق يمكن قراءته.

var image = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508');
print('Ingest date', ee.Date(image.getNumber('system:version').divide(1000)));

هل يتضمّن "كتالوج Earth Engine" بيانات وصفية بتنسيق JSON-LD؟

نعم، يتم تضمين البيانات الوصفية لملف JSON-LD في صفحات HTML الخاصة بالفهرس. على سبيل المثال، تحتوي صفحة Sentinel-2 على الحظر التالي:

<script type="application/ld+json">
  {
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [{
      "@type": "ListItem",
      "position": 1,
      "name": "Earth Engine Data Catalog",
      "item": "https://developers.google.com/earth-engine/datasets"
    },{
      "@type": "ListItem",
      "position": 2,
      "name": "Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-1C",
      "item": "https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_HARMONIZED"
    }]
  }
  </script>

Landsat

كيف يتم تنفيذ خوارزمية simpleComposite؟

إنّ عملية التنفيذ من جهة الخادم تعادل رمز JavaScript هذا.

كيف يمكنني إنشاء مركّبات خالية من السحب من بيانات انعكاس السطح في Landsat؟

تتضمّن بيانات Landsat من المستوى 2 (انعكاس السطح) عدة نطاقات جودة يمكن استخدامها لإخفاء السُحب وغيرها من العناصر غير المرغوب فيها في الصورة. يتوفّر مثال على استخدام هذه النطاقات لمعالجة صور Landsat 8 SR وإنشاء صورة مركّبة متوسطة وخالية من السحب في منشور GIS Stack Exchange هذا. يتم استخدام الإجراء نفسه لإنشاء صورة مركّبة خالية من السحب لاستخدامها في أمثلة التصنيف الخاضع للإشراف في دليل المطوّرين.

هل من الضروري تنسيق انعكاسية السطح في Landsat بين أجهزة الاستشعار المختلفة؟

Roy et al.,‎ تضمّن تقرير 2016 تحليلاً للاختلافات في الانعكاسية بين Landsat 7-8 TOA وانعكاسية السطح. وقد نشروا معاملات OLS وRMA ليتمكّن القرّاء من تحويل قيم الانعكاس الخاصة ببيانات أحد أجهزة الاستشعار إلى بيانات جهاز استشعار آخر. يقول السطر الأخير من الورقة البحثية: "على الرغم من أنّ الاختلافات بين أجهزة الاستشعار صغيرة جدًا، إلا أنّها قد يكون لها تأثير كبير حسب تطبيق بيانات Landsat". ومع ذلك، استند هذا التحليل إلى بيانات تم جمعها مسبقًا.

قد تؤثّر التحسينات التي تم إجراؤها أثناء إعادة معالجة بيانات المجموعتين 1 و2 في العلاقة بين أجهزة الاستشعار، ولكن حسب علمنا، لم يتم إجراء أي تحليلات مشابهة لتحليل Roy et al. (2016) لبيانات المجموعتين 1 و2. على الرغم من عدم إجراء تحليل رسمي، يبدو أنّ هناك إجماعًا عامًا بين المستخدمين المؤثّرين لبيانات Landsat على أنّه لا حاجة إلى تصحيح بيانات المجموعة 2، المستوى 2 (انعكاس السطح). على سبيل المثال، في ردّ على سؤال بشأن الحاجة إلى التوافق مع المجموعة 2، المستوى 2، أشار مايك وولدر من فريق علوم Landsat إلى أنّه استنادًا إلى طبيعة التطبيق المعنيّ (بما في ذلك رسم خرائط الغطاء الأرضي ورصد التغيّرات)، فإنّ منتجات انعكاس السطح من المجموعة 2 مناسبة وموثوقة للغاية، بدون الحاجة إلى تعديل البيانات من أجهزة الاستشعار المختلفة.

كيف يمكنني إخفاء السُحب وظلالها في صور نظام الاستشعار المتعدد الأطياف (MSS)؟

تتضمّن وحدة msslib التابعة لجهة خارجية في &quot;محرّر رموز JavaScript&quot; عملية تنفيذ خوارزمية MSScvm، بالإضافة إلى وظائف مفيدة أخرى لاستكشاف بيانات MSS وإعدادها.

إدارة بيانات

من يملك البيانات التي أحمّلها؟

وفقًا لبنود خدمة Earth Engine، يملك العملاء البيانات التي يحمّلونها إلى Earth Engine.

لا يمكنني تحميل البيانات!

تحقَّق من حالة مهمة التحميل في لوحة "المهام" في أعلى يسار محرّر التعليمات البرمجية. يمكنك أيضًا الاطّلاع على صفحة المهام المخصّصة.

إذا لم تكن هناك مهمة، من المحتمل أنّك حاولت تحميل ملفك من خلال "محرّر الرموز"، ولكن بسبب مشكلة في الشبكة، لم يكتمل تحميل الملف، وبالتالي لم يتم إنشاء المهمة. جرِّب استخدام متصفّح آخر أو جهاز كمبيوتر آخر.

إذا كانت هناك مهمة غير ناجحة، افحص الخطأ الذي يظهر. وإذا لم تظهر رسالة خطأ محددة، تأكَّد أولاً من أنّ ملفك غير تالف من خلال تنفيذ gdalinfo لملفات الصور النقطية أو ogr2ogr لملفات الرسومات المتجهة. ستحاول هذه الأوامر قراءة جميع البيانات من الملفات المصدر وعرض الأخطاء إذا كانت الملفات تالفة.

مثال على طلب gdalinfo:

gdalinfo -mm -stats -checksum file.tif

مثال على طلب ogr2ogr سيحوّل in.shp إلى out.csv:

ogr2ogr -lco GEOMETRY=AS_WKT -f CSV out.csv in.shp

إذا بدا الملف صالحًا، أرسِل معرّف المهمة التي تعذّر تنفيذها كنص (وليس كلقطة شاشة) إلى القائمة البريدية للمطوّرين. تتضمّن معرّفات المهام التنسيق التالي: 4C25GIJBMB52PXTEJTF4JLGL. اجعل ملف المصدر قابلاً للقراءة بشكل علني إذا أمكن ذلك. إذا كان الملف خاصًا، شارِكه مع earthengine@google.com فقط إذا أردت أن يفحصه فريق Earth Engine. إذا لم يكن من الممكن مشاركة ملف المصدر، قدِّم على الأقل ناتج gdalinfo -mm -stats -checksum.

إذا كانت Earth Engine لا تتوافق مع نظام إسقاط معيّن، عليك إعادة إسقاط البيانات قبل تحميلها باستخدام أداة، مثل gdalwarp.

كيف يمكنني تحميل ملف بتنسيق NetCDF أو أي تنسيق نقطي آخر غير متوافق؟

يمكن تحميل ملفات GeoTIFF فقط إلى Earth Engine. يمكن تحويل التنسيقات الأخرى المتوافقة مع GDAL إلى GeoTIFF باستخدام gdal_translate. مثال:

gdal_translate -co COMPRESS=DEFLATE file.nc file.tif

يُرجى العِلم أنّ بعض ملفات NetCDF أو HDF تتألف من مجموعات بيانات فرعية متعددة يمكن العثور عليها باستخدام gdalinfo. سيبدو الأمر gdal_translate في هذه الحالة على النحو التالي (يُرجى ملاحظة أنّ المسار بين علامتَي الاقتباس المزدوجتَين):

gdal_translate HDF4_EOS:EOS_GRID:"/tmp/MCD12Q1.A2001001.h00v08.005.2011055224312.hdf":MOD12Q1:Land_Cover_Type_1 file.tif

في بعض الأحيان، لا تتضمّن ملفات NetCDF إسقاطًا يتعرّف عليه GDAL. في هذه الحالة، عليك ضبط الإسقاط والنطاق المكاني في سطر الأوامر gdal_translate. مثال:

gdal_translate -a_srs EPSG:4326 -a_ullr -180 90 180 -90 file.nc file.tid

ما هي خوارزميات الضغط التي يمكنني استخدامها لملفات GeoTIFF التي تم تحميلها؟

لتحميل ملفات GeoTIFF، يمكن ضغطها باستخدام DEFLATE أو JPEG أو JPEG-XL/JXL أو LERC أو LERC_DEFLATE أو LERC_ZSTD أو LZMA أو LZW أو WEBP أو ZSTD. لقراءة ملفات COG مباشرةً، يمكنك استخدام DEFLATE أو JPEG أو LZW أو ZSTD. يُعدّ ZSTD خيارًا جيدًا بشكل عام لأنّه سريع في فك الضغط مع توفير ضغط جيد لمعظم الصور.

لتطبيق ضغط ZSTD عند استخدام gdal_translate، أضِف الخيارات التالية. إذا كانت البيانات تتضمّن قيمًا ذات فاصلة عشرية، غيِّر PREDICTOR إلى 3.

gdal_translate in.tif out.tif \
  -co COPY_SRC_OVERVIEWS=YES \
  -co TILED=YES \
  -co BLOCKXSIZE=512 \
  -co BLOCKYSIZE=512 \
  -co COMPRESS=ZSTD \
  -co PREDICTOR=2 \
  -co ZSTD_LEVEL=22 \
  -co INTERLEAVE=BAND \
  -co NUM_THREADS=ALL_CPUS

استغرقت عملية استيعاب البيانات النقطية أيامًا ولم تنتهِ.

باستخدام gdalinfo، تحقَّق مما إذا كان ملفك يتضمّن خيار GDAL التالي: INTERLEAVE=PIXEL. بالنسبة إلى الملفات التي تتضمّن هذا الخيار والعديد من النطاقات، قد لا تنتهي عملية الاستيعاب أبدًا لأنّ تخطيط هذه الملفات يجعل عمليات القراءة بطيئة جدًا.

حاوِل تحويل هذه الملفات إلى تنسيق "تداخل النطاقات" قبل تحميلها:

gdal_translate -co "INTERLEAVE=BAND" src.tif dst.tif

لا تتطابق الصور النقطية التي حمّلتها مع الخريطة الأساسية.

إذا كانت البيانات منحرفة قليلاً عن الخريطة الأساسية، من المحتمل أن يكون الإسقاط يتضمّن مرجعًا مكانيًا غير صحيح (افتراض بشأن شكل الأرض). ويحدث ذلك غالبًا مع الإسقاط الجيبي الذي لا يمكن ترميزه بالكامل في بيانات GDAL الوصفية. عندما تعرف الإسقاط المستهدف الذي يجب استخدامه (مثلاً، SR-ORG:6974 للملفات التي تستخدم الإسقاط الجيبي MODIS)، اضبط العلامة --crs أثناء التحميل باستخدام سطر الأوامر أو الحقل crs في بيان التحميل.

إذا ظهرت البيانات مشوّهة بشكل كبير أو في المكان الخاطئ تمامًا، من المحتمل أن يكون الإسقاط أو التحويل التشابهي غير صحيح.

لا يظهر رسم نقطي إلا فوق نصف الكرة الشرقي.

من المحتمل أنّك حمّلت صورة نقطية عالمية تغطي نطاق خطوط الطول [0, 360]. ومع ذلك، تتطلّب Earth Engine أن تكون الصور النقطية ضمن النطاق [-180, 180]. ابدِل النصفين الأيمن والأيسر من الصورة النقطية قبل إدخالها. الاطّلاع على هذه الاقتراحات من GIS Stack Exchange

لماذا تبدو صورة التصنيف التي تمّت إضافتها منقّطة؟

من المحتمل أنّك استخدمت MEAN سياسة التجميع التلقائية. بالنسبة إلى صور التصنيف، يجب استخدام سياسة MODE الخاصة بإنشاء الصور الهرمية، أما بالنسبة إلى صور QA/bitmask، فيجب استخدام سياسة SAMPLE الخاصة بإنشاء الصور الهرمية.

يظهر لي الخطأ التالي: لا يمكن تطبيق قيمة البيانات -128.0 على النطاق رقم 0 من النوع Short<0, 255>.

لا يمكن لمكتبة GDAL التعامل مع النطاقات ذات البايت الواحد على أنّها تحتوي على أعداد صحيحة موقعة، لذا تقرأ هذه النطاقات على أنّها أعداد صحيحة غير موقعة. سيؤدي ذلك إلى تعارض مع قيم البيانات السلبية التي لا تتضمّن بيانات.

إذا كانت القيم أعدادًا صحيحة موقّعة، استخدِم عملية تحميل ملف البيان وأضِف ما يلي إلى قسم مجموعة المربّعات الذي يحتوي على ملفك: data_type: "INT8"

إذا كانت القيم أعدادًا صحيحة غير موقّعة، يعني ذلك أنّ ملفك يتضمّن قيمة nodata غير صالحة. يمكنك تجاهلها عند التحميل باستخدام قيمة البيانات الصحيحة (أو قيمة لا تحدث أبدًا، إذا كانت متوفرة). يمكنك أيضًا استخدام gdal_translate -a_nodata لتغيير قيمة nodata أو gdal_edit.py -unsetnodata لإزالتها.

كيف يمكنني تحميل ملف بتنسيق GeoJSON أو أي تنسيق آخر غير متوافق من تنسيقات الرسومات المتجهة؟

استخدِم ogr2ogr لترجمة التنسيقات المتوافقة مع OGR إلى CSV أو SHP. مثال:

or2ogr -f "ESRI Shapefile" file.shp file.kml

يُرجى العِلم أنّه في عمليات تحميل ملفات CSV، يمكن أن يحتوي عمود الأشكال الهندسية على GeoJSON.

أريد تحميل البيانات باستخدام Python أو تحميل العديد من الملفات في آنٍ واحد.

استخدِم عملية التحميل من سطر الأوامر. تتطلّب عمليات التحميل هذه وضع الملفات المصدر أولاً في حزمة GCS (Google Cloud Storage). لا تتكبّد أي تكلفة عند استخدام GCS إذا بقيت ضمن حدود الطبقة المجانية، راجِع صفحة الأسعار.

أريد تحميل فسيفساء نقطية كبيرة مقسّمة إلى العديد من المربّعات.

إذا كانت جميع الملفات تتضمّن الإسقاط وحجم البكسل نفسهما، ما عليك سوى تحميلها معًا في العنصر نفسه، وسيتم دمجها تلقائيًا.

إذا كانت الملفات تتضمّن إسقاطات أو أحجام وحدات بكسل مختلفة، لا يمكن دمجها في مادة عرض نقطية واحدة، بل يجب تحميل كل جزء كعنصر منفصل في ImageCollection نفسه الذي يمكن دمجه باستخدام ImageCollection.mosaic().

أحاول تحميل صورة فسيفسائية وأتلقّى أخطاءً بشأن مربّعات غير متطابقة.

يجب أن تحتوي مربّعات فسيفساء الصور النقطية في Earth Engine على الإسقاط وحجم البكسل نفسهما. بالإضافة إلى ذلك، يجب أن تتم محاذاة المربّعات تمامًا على حدود البكسل.

أحاول تحميل ملف من حزمة GCS، ولكن لا يمكن لـ Earth Engine العثور عليه.

من المحتمل أنّك استخدمت حسابات مختلفة على Google لتحميل البيانات إلى GCS ولربطها بـ Earth Engine. تأكَّد من أنّ الحساب الذي تستخدمه للاتصال بـ Earth Engine يمكنه قراءة ملف GCS. إذا كان تسجيل الدخول المتعدد في المتصفح يسبب هذا الالتباس، يمكنك الاتصال بـ Earth Engine في نافذة متصفح في وضع التصفح المتخفي.

أريد تصدير العديد من مواد العرض في وقت واحد.

يجب تصدير كل صورة على حدة.

أريد نقل Folder أو ImageCollection أو حذفهما باستخدام أمر واحد.

عليك أولاً نقل أو حذف كل أصل، ثم نقل المجلد أو المجموعة الأصلية أو حذفهما. إذا كان هناك الكثير من مواد العرض التابعة، اكتب حلقة shell أو Python لتكرارها.

أريد الوصول مباشرةً إلى بيانات Earth Engine من خارج EE.

يتضمّن QGIS مكوّنًا إضافيًا خاصًا بـ Earth Engine.

يتضمّن GDAL برنامج تشغيل Earth Engine.

يمكن للأنظمة الأخرى استخدام REST API في "إدارة المؤسسات".

أريد تعديل جزء من مادة عرض Earth Engine بدون إعادة استيعابها بالكامل.

لا يمكن تعديل بيانات نقطية أو متجهة تم تحميلها إلى "Earth Engine"، بل يمكن تعديل خصائص البيانات الوصفية لمواد العرض فقط.

سأفقد إمكانية الوصول إلى حسابي. ماذا أفعل بمواد العرض؟

إذا كانت سياسات الحساب الأصلي تسمح بنقل البيانات، يُرجى مشاركة أصولك مع حساب آخر، ثم نسخ الأصول ليملكها الحساب الجديد. استخدِم أداة النسخ من سطر الأوامر إذا كان هناك العديد من مواد العرض التي تريد نقلها.

في حال حذف حساب، لن يكون بالإمكان الوصول إلى الأصول التي يملكها.

تظهر الصورة التي تم تصديرها في مكان غير صحيح.

بالنسبة إلى بعض عمليات الإسقاط، مثل عمليات الإسقاط الجيبية أو المخروطية، لا يمكن في بعض الأحيان لملفات GeoTIFF تخزين جميع مَعلمات الإسقاط اللازمة، ما يؤدي إلى إنشاء ملف مُصدَّر يظهر في المكان الخطأ عند عرضه في أدوات نظم المعلومات الجغرافية على الكمبيوتر المكتبي أو عند إعادة استيعابه في &quot;Earth Engine&quot;.

لحلّ هذه المشكلة، حدِّد مَعلمة تصدير crs معروفة بأنّها تعمل بشكل جيد مع ملفات GeoTIFF، مثلاً، استخدِم رمز EPSG لمنطقة UTM التي تحتوي على منطقة اهتمامك.

ما هو الموقع الجغرافي لحزمة Cloud Storage الذي يجب استخدامه لتخزين مواد عرض COG؟

يعتمد الجواب على ما تحاول تحسينه. إذا كنت تحاول تحسين الوصول إلى العمليات الحسابية ذات وقت الاستجابة المنخفض، فإنّ أفضل المواقع الجغرافية لحزمة GCS لتخزين مواد عرض COG هي US-CENTRAL*. راجِع صفحة المواقع الجغرافية للحِزم للحصول على معلومات حول اعتبارات أخرى.

لا تحتفظ مواد عرض مجموعة الميزات التي تم تصديرها بالخصائص التي أضبطها.

لا تحتفظ أي من دوال Export.table.* بخصائص على مستوى الجدول في الناتج، ولا تتوافق العديد من تنسيقات الناتج (مثل CSV وGeoJSON) مع هذا النوع من البيانات الوصفية، وقد تتوافق الدالة Export.table.toAsset مع خصائص على مستوى الجدول، ولكنها لا تتوافق معها في الوقت الحالي.

يتم تحويل الجداول التي تم تصديرها إلى Drive بتنسيق CSV إلى تنسيق XLSX.

استنادًا إلى إعدادات Google Drive، يمكن تحويل جداول CSV التي تصدّرها من Earth Engine إلى ملفات XLSX مع آثار غير مقصودة، مثل عمليات تحويل أنواع البيانات. اتّبِع الخطوات التالية لتعديل السلوك لعمليات التصدير اللاحقة.

  1. في Google Drive على الويب، انقر على رمز ترس الإعدادات في أعلى يسار الصفحة.
  2. انقر على "الإعدادات".
  3. انتقِل إلى "تحويل الملفات التي يتم تحميلها إلى تنسيق أدوات تحرير مستندات Google" وأزِل العلامة من المربّع.

أداة تعديل الرموز

لا يمكنني تسجيل الدخول إلى "محرّر الرموز" لأنّه يطلب مني استخدام حساب خاطئ.

سجِّل الخروج، واختَر الحساب المسجّل لاستخدام Earth Engine في صفحة "اختيار حساب"، ثم أعِد اختيار الحساب نفسه في صفحة "اختيار حساب للمتابعة إلى Earth Engine Code Editor" الثانية (قد تختلف الصياغة الدقيقة).

أريد أخذ لقطة شاشة لخريطة عالمية، ولكنّني لا أفضل إسقاط Web Mercator.

إنّ إسقاط الخريطة المستخدَم في &quot;محرّر الرموز&quot; هو Web Mercator ('EPSG:3857'). ويؤدي ذلك إلى تضخيم حجم الأجسام البعيدة عن خط الاستواء، ما يجعل المناطق الواقعة على خطوط العرض العليا تبدو أكبر بكثير من حجمها الفعلي، مقارنةً بالمناطق القريبة من خط الاستواء. لا يمكنك تغيير عرض لوحة خريطة &quot;محرّر الرموز&quot;، ولكن يمكنك &quot;رسم&quot; صورة في العرض الذي تختاره على لوحة Web Mercator باستخدام الطريقة ee.Image.changeProj. يمكنك الاطّلاع على صفحة مرجع واجهة برمجة التطبيقات الخاصة بالطريقة للحصول على مثال حول عرض نموذج تضاريس رقمي عالمي على خريطة &quot;محرّر التعليمات البرمجية&quot; باستخدام إسقاط روبنسون. يُرجى العِلم أنّه يجب استخدام هذه الطريقة لأغراض العرض المرئي فقط، لأنّ أدوات الفحص والرسم في &quot;محرّر الرموز&quot; لا تزال تعمل بنظام Web Mercator.

لا يتم حفظ النص البرمجي (Script error: Unknown commit).

إذا تلقّيت رسالة Script error: Unknown commit عند حفظ نص برمجي، من المحتمل أنّ ذلك يعني أنّ المستودع الذي تحفظ فيه غير متزامن. يصعب تحديد سبب هذه الحالة، ولكن لحلّ المشكلة، جرِّب إعادة تحميل قائمة النصوص البرمجية باستخدام الزر في أعلى يسار علامة التبويب "النص البرمجي". إذا لم ينجح ذلك، جرِّب إنشاء مستودع جديد من الزر "جديد" في علامة التبويب "النص البرمجي" وحفظ النص البرمجي فيه (قد تحتاج إلى نقل النصوص البرمجية إلى المستودع الجديد من المستودع غير المتزامن).

لماذا تظهر لي أخطاء 400 متكرّرة في "أداة تعديل الرموز البرمجية"؟

إذا كنت ترى أخطاء 400 متكررة في "محرّر الأكواد"، انتقِل إلى https://myaccount.google.com/connections، ابحث عن "محرّر الأكواد في Earth Engine" في قائمة التطبيقات والخدمات، وانقر عليه، ثم انقر على "حذف كل عمليات الربط التي أجريتها مع محرّر الأكواد في Earth Engine" وأكِّد ذلك. بعد ذلك، افتح "محرّر الرموز" وأعِد المصادقة.