انتقل إلى المحتوى الرئيسي

استكشاف الأخطاء وإصلاحها

توفر هذه الصفحة التشخيص والحلول للمشكلات الشائعة عند استخدام MipMapEngine SDK.

🔍 أدوات التشخيص

عند مواجهة المشكلات، يرجى أولاً استخدام أدوات التشخيص التالية:

1. التحقق من صحة ملف التكوين

task_json_check.exe -task_json your_config.json

2. فحص الأجهزة

hardware_check.exe

3. حالة الترخيص

license_manager.exe -info

📋 الأخطاء الشائعة والحلول

أخطاء ملف التكوين

خطأ: فشل تحليل JSON

رسالة الخطأ:

[ERROR] JSON parse failed: expected ',' or '}' at line 45

السبب: خطأ في تنسيق JSON، عادة فاصلة مفقودة أو فاصلة إضافية.

الحل:

  1. استخدم أدوات تنسيق JSON للتحقق من الصيغة
  2. تأكد من عدم وجود فاصلة بعد العنصر الأخير
  3. تحقق من الأقواس أو علامات الاقتباس غير المغلقة

مثال للإصلاح:

// خطأ
{
"image_meta_data": [
{"id": 1, "path": "image1.jpg"}, // العنصر الأخير يجب ألا يحتوي على فاصلة
]
}

// صحيح
{
"image_meta_data": [
{"id": 1, "path": "image1.jpg"}
]
}

خطأ: لم يتم العثور على ملف الصورة

رسالة الخطأ:

[ERROR] Image file not found: C:/images/DJI_0001.JPG

السبب: مسار الصورة المحدد غير صحيح أو الملف غير موجود.

الحل:

  1. تحقق من تهجئة مسار الملف
  2. تأكد من وجود الملف فعلياً
  3. استخدم فاصل المسار الصحيح (يُنصح باستخدام /)
  4. جرب استخدام المسار المطلق

أمثلة على المسارات:

// Windows - موصى به
"path": "C:/Projects/Images/DJI_0001.JPG"

// Windows - يعمل أيضاً
"path": "C:\\Projects\\Images\\DJI_0001.JPG"

// مسار نسبي
"path": "../images/DJI_0001.JPG"

خطأ: المعامل خارج النطاق

رسالة الخطأ:

[ERROR] Invalid resolution_level: 5 (should be 1-3)

السبب: قيمة المعامل ليست ضمن النطاق المسموح به.

الحل: تحقق وصحح قيم المعاملات:

  • resolution_level: 1 (عالي)، 2 (متوسط)، 3 (منخفض)
  • input_image_type: 1 (RGB)، 2 (متعدد الأطياف)، 3 (الأشعة تحت الحمراء)
  • coordinate_system.type: 1 (مُسقط)، 2 (جغرافي)، 3 (مركزي أرضي)

أخطاء معالجة الصور

خطأ: صور غير كافية

رسالة الخطأ:

[ERROR] Insufficient images for reconstruction. Minimum 5 images required, found 3.

السبب: عدد قليل جداً من الصور لإجراء إعادة البناء ثلاثي الأبعاد.

الحل:

  • قدم على الأقل 5 صور
  • تأكد من وجود تداخل كافٍ بين الصور (يُنصح >60%)
  • تحقق مما إذا كانت أي صور قد تمت تصفيتها تلقائياً (انظر السجلات)

خطأ: لا توجد معلومات GPS

رسالة الخطأ:

[WARNING] No GPS information found in image EXIF

السبب: لا توجد معلومات GPS في EXIF الصورة.

الحل:

  1. استخدم بيانات POS مخصصة:
{
"id": 1,
"path": "image.jpg",
"meta_data": {
"pos": [114.123, 22.456, 100.5],
"pos_sigma": [0.5, 0.5, 1.0]
}
}
  1. قلل قيود الموضع:
{
"use_image_position_constraint": false
}

مشاكل إعادة البناء متعدد الكاميرات

خطأ: عدم تطابق عدد صور مجموعة الكاميرا

رسالة الخطأ:

[ERROR] Camera group image count mismatch: nadir(50), oblique_f(48)

السبب: عدد الصور غير متسق عبر مجموعات الكاميرا المختلفة.

الحل:

  1. تحقق مما إذا كانت أي صور مفقودة
  2. تأكد من أن التشغيل المتزامن متعدد الكاميرات يعمل بشكل صحيح
  3. استخدم task_json_check للتحقق من تكوين التجميع

مثال على التجميع الصحيح:

{
"image_meta_data": [
// كل موضع يجب أن يحتوي على صور من جميع الكاميرات
{"id": 1, "path": "pos1/nadir.jpg", "group": "nadir"},
{"id": 2, "path": "pos1/forward.jpg", "group": "forward"},
{"id": 3, "path": "pos1/backward.jpg", "group": "backward"},
// ... الموضع التالي
{"id": 4, "path": "pos2/nadir.jpg", "group": "nadir"},
{"id": 5, "path": "pos2/forward.jpg", "group": "forward"},
{"id": 6, "path": "pos2/backward.jpg", "group": "backward"}
]
}

مشاكل الذاكرة والأداء

خطأ: نفاد الذاكرة

رسالة الخطأ:

[ERROR] Out of memory. Required: 24GB, Available: 16GB

السبب: ذاكرة النظام غير كافية لمعالجة المهمة الحالية.

الحل:

  1. خفض مستوى الدقة:
{
"resolution_level": 3 // استخدم دقة منخفضة
}
  1. تحديد استخدام الذاكرة:
{
"min_avali_memory_size": 12.0 // حدد إلى 12GB
}
  1. تقليل تنسيقات الإخراج:
{
"generate_obj": true,
"generate_osgb": false, // تعطيل المخرجات غير الضرورية
"generate_3d_tiles": false
}

خطأ: نفاد ذاكرة GPU

رسالة الخطأ:

[ERROR] CUDA out of memory. Tried to allocate 2.00 GiB

السبب: ذاكرة GPU غير كافية.

الحل:

  1. أغلق البرامج الأخرى التي تستخدم GPU
  2. اخفض resolution_level
  3. استخدم معالجة الكتل (للمشاريع الكبيرة)

مشاكل الترخيص

خطأ: ترخيص غير صالح

رسالة الخطأ:

[ERROR] Invalid license: License has expired

الحل:

  1. تحقق من حالة الترخيص: license_manager.exe -info
  2. تأكد من صحة وقت النظام
  3. أعد تفعيل الترخيص
  4. اتصل بالدعم الفني لتحديث الترخيص

خطأ: خدمة Virbox غير قيد التشغيل

رسالة الخطأ:

[ERROR] Virbox service not running

الحل:

Windows

# بدء الخدمة
net start "Virbox Service"

# فحص حالة الخدمة
sc query "Virbox Service"

Linux

# تحميل برنامج التشغيل
sudo modprobe virbox

# فحص برنامج التشغيل
lsmod | grep virbox

مشاكل نتائج الإخراج

المشكلة: النموذج به ثقوب

الأسباب المحتملة:

  • تداخل الصور غير كافٍ
  • مناطق فقيرة بالملمس (سطح الماء، الزجاج، إلخ)
  • جودة الصورة رديئة

الحل:

  1. زيادة تداخل الصور إلى 80%
  2. استخدم التصوير المائل لتكملة المناظر الجانبية
  3. تجنب التصوير في ظروف الإضاءة القوية أو الظل
  4. تحقق وأزل الصور الضبابية

المشكلة: ملمس ضبابي

الأسباب المحتملة:

  • الصور الأصلية ضبابية
  • ارتفاع الطيران عالٍ جداً
  • إعدادات الكاميرا غير صحيحة

الحل:

  1. استخدم سرعة غالق أسرع (≥1/1000s)
  2. اخفض ارتفاع الطيران
  3. استخدم كاميرا بدقة أعلى
  4. تأكد من صحة تركيز الكاميرا

المشكلة: إزاحة الإحداثيات

الأسباب المحتملة:

  • إعدادات نظام الإحداثيات غير صحيحة
  • دقة GPS ضعيفة
  • لم يتم استخدام نقاط التحكم

الحل:

  1. تحقق من تكوين نظام الإحداثيات:
{
"coordinate_system": {
"type": 2,
"label": "WGS 84",
"epsg_code": 4326
}
}
  1. أضف نقاط التحكم:
{
"gcp_path": "gcps.txt",
"gcp_coor_sys": {
"type": 3,
"epsg_code": 32650 // تأكد من التوافق مع الفعلي
}
}

🛠️ التشخيصات المتقدمة

عرض السجلات التفصيلية

موقع ملف السجل: working_dir/log/log.txt

البحث عن المعلومات الرئيسية:

# عرض الأخطاء
grep -i "error" log.txt

# عرض التحذيرات
grep -i "warning" log.txt

# عرض التقدم
grep "PROGRESS" log.txt

تحليل الأداء

العثور على مقاييس الأداء في السجلات:

  • [TIMING] - استهلاك الوقت لكل مرحلة
  • [MEMORY] - استخدام الذاكرة
  • [GPU] - استخدام GPU

فحص النتائج الوسيطة

فحص النتائج الوسيطة لتحديد المشاكل:

  1. نتائج AT: working_dir/AT/mvs.xml
  2. نطاق ROI: working_dir/milestones/roi.json
  3. تقرير الجودة: working_dir/report/report.json

📞 الحصول على المساعدة

إذا لم تتمكن الحلول أعلاه من حل مشكلتك:

  1. اجمع معلومات التشخيص:

    • الإخراج من تشغيل task_json_check
    • ملف log.txt الكامل
    • ملف التكوين (مع إزالة البيانات الحساسة)
    • معلومات النظام (تكوين الأجهزة)
  2. إرسال المشكلة:

    • GitHub Issues: [مستودع المشروع]
    • البريد الإلكتروني للدعم الفني: support@mipmap.com
    • قم بتضمين معلومات التشخيص أعلاه
  3. التحقق من التحديثات:

    • تحقق مما إذا كان هناك إصدار جديد
    • راجع سجل تغييرات الإصدار
    • تابع قائمة المشكلات المعروفة

يتم التحديث باستمرار. إذا واجهت مشكلات غير مدرجة، يرجى الاتصال بالدعم الفني.