إعادة الإعمار ثلاثي الأبعاد مع الذاكرة المكانية
هينجي وانج، لورديس أغابيتو
أرخايف 2024
[2024-10-25] إضافة دعم لـ Nerfstudio
[2024-10-18] إضافة تقدير معلمات الكاميرا
[2024-09-30] @hugoycj يضيف عرضًا توضيحيًا متدرجًا
[2024-09-20] تعليمات مجموعات البيانات data_preprocess.md
[2024-09-11] كود Spann3R
استنساخ Spann3R
git clone https://github.com/HengyiWang/spann3r.git cd spann3r
إنشاء بيئة كوندا
conda create -n spann3r python=3.9 cmake=3.14.0 conda install pytorch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 pytorch-cuda=11.8 -c pytorch -c nvidia # use the correct version of cuda for your system pip install -r requirements.txt # Open3D has a bug from 0.16.0, please use dev version pip install -U -f https://www.open3d.org/docs/latest/getting_started.html open3d
تجميع حبات cuda لـ RoPE
cd croco/models/curope/ python setup.py build_ext --inplace cd ../../../
قم بتنزيل نقطة تفتيش DUSt3R
mkdir checkpoints cd checkpoints # Download DUSt3R checkpoints wget https://download.europe.naverlabs.com/ComputerVision/DUSt3R/DUSt3R_ViTLarge_BaseDecoder_512_dpt.pth
قم بتنزيل نقطة التفتيش الخاصة بنا وضعها تحت ./checkpoints
قم بتنزيل بيانات المثال (مشهدان من Map-free-reloc) وقم بفك ضغطها كملف ./examples
تشغيل العرض التوضيحي:
python demo.py --demo_path ./examples/s00567 --kf_every 10 --vis --vis_cam
بالنسبة للتصور --vis
، سيعطيك نافذة لضبط عرض العرض. بمجرد العثور على العرض المطلوب عرضه، يرجى النقر فوق space key
وإغلاق النافذة. سيقوم الكود بعد ذلك بعرض إعادة البناء التزايدي.
نيرفستوديو:
# Run demo use --save_ori to save scaled intrinsics for original images python demo.py --demo_path ./examples/s00567 --kf_every 10 --vis --vis_cam --save_ori # Run splatfacto ns-train splatfacto --data ./output/demo/s00567 --pipeline.model.camera-optimizer.mode SO3xR3 # Render your results ns-render interpolate --load-config [path-to-your-config]/config.yml
لاحظ أنه يمكنك هنا استخدام --save_ori
لحفظ العناصر الجوهرية المقاسة في transform.json
لتدريب NeRF/3D Gaussians على الصور الأصلية.'
نوفر أيضًا واجهة Gradio لتجربة أفضل، يتم تشغيلها فقط من خلال:
# لمستخدمي Linux وWindows (وmacOS مع Intel؟؟)python app.py
يمكنك تحديد وسيطات --server_port
و --share
و --server_name
لتلبية احتياجاتك!
نحن نستخدم Habitat وScanNet++ وScanNet وArkitScenes وCo3D وBlendedMVS لتدريب نموذجنا. يرجى الرجوع إلى data_preprocess.md.
الرجاء استخدام الأمر التالي لتدريب نموذجنا:
torchrun --nproc_per_node 8 train.py --batch_size 4
الرجاء استخدام الأمر التالي لتقييم نموذجنا:
python eval.py
تعتمد التعليمات البرمجية الخاصة بنا، وخط أنابيب المعالجة المسبقة للبيانات، والبرامج النصية للتقييم على العديد من المستودعات الرائعة:
DUST3R
سبلاتام
NeRFStudio
MVSNet
لطيفة سلام
العصبيةGBD
SimpleRecon
نشكر المؤلفين على إصدار الكود الخاص بهم!
تم دعم البحث المقدم هنا من خلال جائزة بحثية مدعومة من Cisco Research ومركز UCL لتدريب الدكتوراه في الذكاء الاصطناعي التأسيسي بموجب منحة UKRI رقم EP/S021566/1. استفاد هذا المشروع من الوقت في منشأة الحوسبة عالية الأداء من المستوى 2 JADE2، بتمويل من EPSRC (EP/T022205/1).
إذا وجدت الكود أو البحث الخاص بنا مفيدًا لبحثك، فيرجى مراعاة الاستشهاد بما يلي:
@article{wang20243d, title={3D Reconstruction with Spatial Memory}, author={Wang, Hengyi and Agapito, Lourdes}, journal={arXiv preprint arXiv:2408.16061}, year={2024} }