يحتوي هذا المستودع على الرمز (في Pytorch) لورقة "شبكة مطابقة ستيريو هرم" (CVPR 2018) من تأليف Jia-Ren Chang و Yong-Sheng Chen.
2020/12/20: تحديث PSMNET: الآن دعم Torch 1.6.0/torchvision 0.5.0 و Python 3.7 ، إزالة المسافة البادئة غير المتسقة.
2020/12/20: يمكن العثور على ستيريو في الوقت الفعلي المقترح هنا في الوقت الفعلي.
@inproceedings{chang2018pyramid,
title={Pyramid Stereo Matching Network},
author={Chang, Jia-Ren and Chen, Yong-Sheng},
booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
pages={5410--5418},
year={2018}
}
أظهر العمل الأخير أن تقدير العمق من زوج من الصور الاستريو يمكن صياغة كمهمة تعليمية خاضعة للإشراف ليتم حلها مع الشبكات العصبية التلافيفية (CNNs). ومع ذلك ، تعتمد البنى الحالية على شبكات سيامي القائمة على البقع ، والتي تفتقر إلى الوسائل لاستغلال معلومات السياق لإيجاد المراسلات في المناطق غير المعروضة. لمعالجة هذه المشكلة ، نقترح PSMNET ، شبكة مطابقة ستيريو هرم تتكون من وحدتين رئيسيتين: تجميع الهرم المكاني و CNN ثلاثي الأبعاد. تستفيد وحدة تجميع الهرم المكانية من قدرة معلومات السياق العالمي عن طريق تجميع السياق في مواقع ومواقع مختلفة لتشكيل حجم التكلفة. يتعلم CNN ثلاثي الأبعاد تنظيم حجم التكلفة باستخدام شبكات Hourglass المتعددة المكدسة بالتزامن مع الإشراف المتوسط.

Usage of Scene Flow dataset
Download RGB cleanpass images and its disparity for three subset: FlyingThings3D, Driving, and Monkaa.
Put them in the same folder.
And rename the folder as: "driving_frames_cleanpass", "driving_disparity", "monkaa_frames_cleanpass", "monkaa_disparity", "frames_cleanpass", "frames_disparity".
على سبيل المثال ، استخدم الأمر التالي لتدريب psmnet على تدفق المشهد
python main.py --maxdisp 192
--model stackhourglass
--datapath (your scene flow data folder)
--epochs 10
--loadmodel (optional)
--savemodel (path for saving model)
كمثال آخر ، استخدم الأمر التالي إلى Finetune A PSMNET على Kitti 2015
python finetune.py --maxdisp 192
--model stackhourglass
--datatype 2015
--datapath (KITTI 2015 training data folder)
--epochs 300
--loadmodel (pretrained PSMNet)
--savemodel (path for saving model)
يمكنك أيضًا رؤية هذه الأمثلة في Run.Sh.
استخدم الأمر التالي لتقييم PSMNET المدربين على بيانات اختبار KITTI 2015
python submission.py --maxdisp 192
--model stackhourglass
--KITTI 2015
--datapath (KITTI 2015 test data folder)
--loadmodel (finetuned PSMNet)
※ ملاحظة: تم حفظ النموذج المسبق في .tar. ومع ذلك ، لا تحتاج إلى فكه. استخدم torch.load () لتحميله.
تحديث: 2018/9/6 أصدرنا نموذج Kitti 2012 المدربين قبل التدريب.
استكمال: 2021/9/22 نموذج ما قبل المسبق باستخدام Torch 1.8.1 (وزن النموذج السابق يتم تدريب الشعلة 0.4.1)
| Kitti 2015 | تدفق المشهد | Kitti 2012 | تدفق المشهد (الشعلة 1.8.1) |
|---|---|---|---|
| محرك Google | محرك Google | محرك Google | محرك Google |
python Test_img.py --loadmodel (finetuned PSMNet) --leftimg ./left.png --rightimg ./right.png

※ لاحظ أنه تم حساب أخطاء التحقق من 3-PX المبلغ عنها باستخدام رمز MATLAB الرسمي الخاص بـ KITTI ، وليس رمزنا.
رابط المتصدرين
| طريقة | D1-all (الكل) | D1-ALL (NOC) | وقت التشغيل (ق) |
|---|---|---|---|
| psmnet | 2.32 ٪ | 2.14 ٪ | 0.41 |
| Iresnet-I2 | 2.44 ٪ | 2.19 ٪ | 0.12 |
| GC-NET | 2.87 ٪ | 2.61 ٪ | 0.90 |
| MC-CNN | 3.89 ٪ | 3.33 ٪ | 67 |
نتصور الحقول التقبرية لإعدادات مختلفة من PSMNET ، الإعداد الكامل وخط الأساس.
الإعداد الكامل: مقنع موسع ، SPP ، الساعة الرملية المكدسة
خط الأساس: لا يوجد مقنع متوسع ، لا SPP ، لا ساعة مكدسة
تم حساب الحقول الاستقبالية للبكسل في مركز الصور ، المشار إليها من قبل الصليب الأحمر.

يتم الترحيب بأي مناقشات أو مخاوف!