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

Reconstruct3D - الإعادة الإنشاء ثلاثي الأبعاد

نظرة عامة

يُستخدم واجهة Reconstruct3D لإنتاج نماذج ثنائية وثلاثية الأبعاد من نتائج التثليث الجوي. عادة ما تُستخدم مع ReconstructAT لإتمام سير عمل الإعادة الإنشاء الكامل. تدعم هذه الواجهة تنسيقات إخراج متعددة، ومعالجة الكتل، والتحكم الدقيق في المعاملات.

السيناريوهات المناسبة
  • إنتاج نماذج ثلاثية الأبعاد من نتائج التثليث الجوي
  • إنتاج الصور الجوية المعدلة ونماذج السطح الرقمية
  • إعادة الإنشاء بالكتل للبيانات واسعة النطاق
  • الحاجة إلى تنسيقات إخراج محددة

استخدام الواجهة

استخدام سطر الأوامر

reconstruct_full_engine.exe -reconstruct_type 2 -task_json 3d_config.json

وصف المعاملات

  • reconstruct_type: ثابت كـ 2 (يشير إلى Reconstruct3D)
  • task_json: مسار ملف التهيئة

معاملات التهيئة

المعاملات المطلوبة

المعاملالنوعالوصف
license_idintرمز ترخيص SDK، موحد كـ 9200
working_dirstringدليل العمل (يجب أن يكون نفس التثليث الجوي)
gdal_folderstringمسار بيانات GDAL
input_image_typeintنوع الصورة: 1=RGB، 2=متعدد الأطياف، 3=الأشعة تحت الحمراء
image_meta_dataJSON Arrayمعلومات البيانات الوصفية للصور المدخلة
resolution_levelintدقة الإعادة الإنشاء: 1=دقة عالية، 2=دقة متوسطة، 3=دقة منخفضة

المعاملات الاختيارية

المعاملات الأساسية

المعاملالنوعالافتراضيالوصف
reconstruct_modeint0نمط الإعادة الإنشاء: 0=المشهد العام، 1=المشهد المحيط، 2=مشهد خط الكهرباء
min_avali_memory_sizedouble0الحد الأدنى للذاكرة المتاحة (GB)، يُستخدم للتحكم في كمية الكتل
fast_modeboolfalseالوضع السريع، يحسن الكفاءة لكن يقلل التفاصيل
keep_undistort_imagesboolfalseما إذا كان سيتم الاحتفاظ بالصور غير المشوهة

التحكم في تنسيق الإخراج

المعاملالنوعالافتراضيالوصف
generate_osgbboolfalseإنتاج نموذج ثلاثي الأبعاد بتنسيق OSGB
generate_3d_tilesboolfalseإنتاج بتنسيق 3D Tiles (b3dm)
generate_lasboolfalseإنتاج سحابة نقاط بتنسيق LAS
generate_pc_plyboolfalseإنتاج سحابة نقاط بتنسيق PLY
generate_pc_osgbboolfalseإنتاج سحابة نقاط LOD بتنسيق OSGB
generate_pc_pntsboolfalseإنتاج سحابة نقاط LOD بتنسيق pnts
generate_objboolfalseإنتاج شبكة ذات ملمس بتنسيق OBJ
generate_plyboolfalseإنتاج شبكة ذات ملمس بتنسيق PLY
generate_geotiffboolfalseإنتاج صورة جوية معدلة بتنسيق GeoTIFF
generate_tile_2Dboolfalseإجراء تقطيع البلاط على الصورة الجوية المعدلة
generate_2D_from_3D_modelboolfalseإنتاج صورة جوية معدلة ثنائية الأبعاد من النموذج ثلاثي الأبعاد

المعاملات المتقدمة

المعاملالنوعالافتراضيالوصف
use_draco_compressionbooltrueما إذا كان سيتم استخدام ضغط Draco لـ 3D Tiles
tex_image_type_3dtilesint0تنسيق ملمس 3D Tiles: 0=JPEG، 1=WebP
use_gcj02boolfalseما إذا كان سيتم تحويل بلاط الصورة الجوية المعدلة إلى نظام إحداثيات GCJ02
coordinate_system_3dJSON-نظام الإحداثيات للإخراج ثلاثي الأبعاد
coordinate_system_2dJSON-نظام الإحداثيات للإخراج ثنائي الأبعاد
roi_for_2dJSON-منطقة الاهتمام للإعادة الإنشاء ثنائية الأبعاد
roi_for_3dJSON-منطقة الاهتمام للإعادة الإنشاء ثلاثية الأبعاد
roi_coordinate_systemJSONWGS84نظام الإحداثيات لمنطقة الاهتمام

وصف هيكل البيانات

بيانات الكاميرا الوصفية

{
"id": 1, // معرف الكاميرا الفريد
"meta_data": {
"camera_name": "Camera-1", // اسم الكاميرا
"projection_model": 0, // نموذج الإسقاط (اختياري)
"width": 4000, // عرض الحساس (بكسل)
"height": 3000, // ارتفاع الحساس (بكسل)
"parameters": [ // معاملات الكاميرا الداخلية (مصفوفة من 10 عناصر)
// fx, fy, cx, cy, k1, k2, p1, p2, k3,placeholder_param
]
}
}

ROI (منطقة الاهتمام)

{
"boundary": [ // حدود المضلع ثنائي الأبعاد (عكس اتجاه عقارب الساعة)
[x1, y1],
[x2, y2],
[x3, y3]
// ...
],
"min_z": 100.0, // الارتفاع الأدنى (اختياري)
"max_z": 500.0 // الارتفاع الأقصى (اختياري)
}

إعدادات نظام الإحداثيات للإخراج

{
"coordinate_system_3d": {
"type": 3, // نظام الإحداثيات المسقط
"epsg_code": 32650 // UTM Zone 50N
},
"coordinate_system_2d": {
"type": 2, // نظام الإحداثيات الجغرافي
"epsg_code": 4326 // WGS84
}
}

أمثلة التهيئة الكاملة

الإعادة الإنشاء ثلاثية الأبعاد الأساسية

{
"license_id": 9200,
"working_dir": "C:/Projects/3D_Task",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 2,
"image_meta_data": [
{
"id": 1,
"path": "C:/Images/DJI_0001.JPG"
},
{
"id": 2,
"path": "C:/Images/DJI_0002.JPG"
}
],
"generate_osgb": true,
"generate_3d_tiles": true,
"generate_las": true,
"generate_geotiff": true
}

تهيئة الإعادة الإنشاء عالية الدقة

{
"license_id": 9200,
"working_dir": "C:/Projects/HighQuality_3D",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 1, // أعلى دقة
"reconstruct_mode": 0, // المشهد العام
"image_meta_data": [...],
"generate_osgb": true,
"generate_3d_tiles": true,
"generate_obj": true,
"generate_geotiff": true,
"generate_tile_2D": true,
"coordinate_system_3d": {
"type": 3,
"epsg_code": 32650 // UTM 50N
},
"coordinate_system_2d": {
"type": 2,
"epsg_code": 4326 // WGS84
}
}

إعادة الإنشاء بالكتل للبيانات واسعة النطاق

{
"license_id": 9200,
"working_dir": "C:/Projects/LargeScale_3D",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 2,
"min_avali_memory_size": 16.0, // تحديد كل كتلة بحد أقصى 16GB ذاكرة
"image_meta_data": [...],
"roi_for_3d": {
"boundary": [
[114.12, 22.12],
[114.13, 22.12],
[114.13, 22.13],
[114.12, 22.13]
],
"min_z": 0,
"max_z": 500
},
"generate_3d_tiles": true,
"use_draco_compression": true,
"tex_image_type_3dtiles": 1 // استخدام ضغط ملمس WebP
}

تهيئة المشهد الخاص

إعادة الإنشاء للكائن المحيط

{
"license_id": 9200,
"working_dir": "C:/Projects/Object_3D",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 1,
"reconstruct_mode": 1, // نمط المشهد المحيط
"image_meta_data": [...],
"generate_obj": true,
"generate_ply": true,
"coordinate_system_3d": {
"type": 1 // نظام الإحداثيات المحلي
}
}

إنتاج الصورة الجوية المعدلة فقط

{
"license_id": 9200,
"working_dir": "C:/Projects/Ortho_Only",
"gdal_folder": "C:/MipMap/SDK/data",
"input_image_type": 1,
"resolution_level": 2,
"image_meta_data": [...],
"generate_geotiff": true,
"generate_tile_2D": true,
"generate_2D_from_3D_model": true,
"roi_for_2d": {
"boundary": [...] // تحديد نطاق الصورة الجوية المعدلة
},
"coordinate_system_2d": {
"type": 3,
"epsg_code": 32650
}
}

نتائج الإخراج

إخراج النموذج ثلاثي الأبعاد (products/3D/)

  • model-osgb/ - نموذج وLOD بتنسيق OSGB
  • model-b3dm/ - تنسيق 3D Tiles (مع tileset.json)
  • model-obj/ - نموذج وملامس بتنسيق OBJ
  • point-las/ - سحابة نقاط بتنسيق LAS
  • point-ply/ - سحابة نقاط بتنسيق PLY
  • point-osgb/ - سحابة نقاط LOD بتنسيق OSGB
  • point-pnts/ - سحابة نقاط بتنسيق 3D Tiles

إخراج المنتج ثنائي الأبعاد (products/2D/)

  • geotiffs/ - الصورة الجوية المعدلة وDSM بتنسيق GeoTIFF
  • dom_tiles/ - بلاط الصورة الجوية المعدلة
  • dsm_tiles/ - بلاط نموذج السطح الرقمي

النتائج الوسطية (milestones/)

  • undistorted/ - الصور غير المشوهة (إذا تم الاحتفاظ بها)
  • depth_maps/ - خرائط العمق
  • mesh/ - بيانات الشبكة الوسطية

وصف مستوى الدقة

المستوىالوصفوقت المعالجة النسبيسيناريوهات التطبيق
1دقة فائقة3-5xالمسح المهني، حماية التراث الثقافي
2دقة عالية1xتطبيقات الهندسة العامة
3معاينة سريعة0.2-0.3xالتحقق السريع، المعاينة

التوازن بين الدقة والكفاءة

  • resolution_level=1: أعلى تفاصيل هندسية ووضوح ملمس
  • resolution_level=2: توازن الجودة والكفاءة، مُوصى به لمعظم التطبيقات
  • resolution_level=3: معالجة سريعة، مناسبة للتحقق الأولي

أفضل الممارسات

1. إدارة الذاكرة

للبيانات واسعة النطاق:

{
"min_avali_memory_size": 24.0, // تعيين بناءً على الذاكرة المتاحة
"resolution_level": 2 // النظر في تقليل الدقة
}

2. اختيار تنسيق الإخراج

  • العرض على الويب: استخدم 3D Tiles + ضغط Draco
  • تحليل GIS: إنتاج GeoTIFF وLAS
  • البرامج المهنية: استخدم تنسيق OSGB
  • التحرير والمعالجة: تصدير OBJ أو PLY

3. إعدادات نظام الإحداثيات

  • النماذج ثلاثية الأبعاد عادة تستخدم أنظمة الإحداثيات المسقطة (مثل UTM)
  • الصور الجوية المعدلة يمكن أن تستخدم أنظمة جغرافية أو مسقطة حسب الحاجة
  • النظر في استخدام WGS84 لتطبيقات الويب

4. استخدام ROI

  • استخدم ROI المُنتج من التثليث الجوي كأساس
  • تعديل النطاق حسب الحاجة
  • تعيين ROI منفصلة للثنائي والثلاثي الأبعاد

تحسين الأداء

المعالجة السريعة

{
"resolution_level": 3,
"fast_mode": true,
"generate_3d_tiles": true, // إنتاج التنسيقات الضرورية فقط
"use_draco_compression": true
}

الإخراج عالي الجودة

{
"resolution_level": 1,
"fast_mode": false,
"keep_undistort_images": true, // الاحتفاظ بالنتائج الوسطية للفحص
"generate_obj": true, // إنتاج شبكة عالية الجودة
"generate_geotiff": true
}

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

س: خطأ "لا يمكن العثور على نتائج التثليث الجوي"

ج: تأكد من:

  • working_dir هو نفسه المستخدم في ReconstructAT
  • اكتمال التثليث الجوي بنجاح
  • دليل milestones يحتوي على ملف mvs.xml

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

ج:

  • تعيين min_avali_memory_size لتحديد استخدام الذاكرة
  • تقليل resolution_level
  • استخدام DivideTiles للتقسيم المسبق

س: إحداثيات الإخراج غير صحيحة

ج:

  • فحص إعدادات coordinate_system_3d/2d
  • تأكيد أن نظام إحداثيات ROI يطابق البيانات
  • التحقق من صحة مسار بيانات GDAL

الخطوات التالية


ملاحظة: Reconstruct3D يوفر خيارات إخراج غنية. يُوصى بالتحقق أولاً بدقة منخفضة، ثم المتابعة بإعادة الإنشاء عالية الجودة.