이 저장소에는 Jia-Ren Chang 및 Yong-Sheng Chen의 "Pyramid Stereo Matching Network"용지 (CVPR 2018)에 대한 코드 (Pytorch)가 포함되어 있습니다.
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}
}
최근의 연구에 따르면 스테레오 이미지 쌍의 깊이 추정은 CNN (Convolutional Neural Networks)으로 해결되는 감독 학습 과제로 공식화 될 수 있습니다. 그러나 현재의 아키텍처는 패치 기반 시암 네트워크에 의존하며, 부실한 지역에서 서신을 찾기위한 컨텍스트 정보를 이용할 수있는 수단이 부족합니다. 이 문제를 해결하기 위해 공간 피라미드 풀링과 3D CNN의 두 가지 주요 모듈로 구성된 피라미드 스테레오 일치 네트워크 인 PSMNet을 제안합니다. 공간 피라미드 풀링 모듈은 다른 척도와 위치에서 컨텍스트를 집계하여 비용 부피를 형성함으로써 글로벌 컨텍스트 정보의 용량을 활용합니다. 3D CNN은 중간 감독과 함께 스택 된 여러 모래 시계 네트워크를 사용하여 비용 볼륨을 정규화하는 법을 배웁니다.

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)
또 다른 예로, 다음 명령을 사용하여 Kitti 2015의 PSMNet을 미정하십시오.
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에서 해당 예제를 볼 수 있습니다.
Kitti 2015 테스트 데이터에서 훈련 된 PSMNet을 평가하려면 다음 명령을 사용하십시오.
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을 사용한 사전 취사 모델 (이전 모델 무게는 훈련 된 Torch 0.4.1)
| Kitti 2015 | 장면 흐름 | Kitti 2012 | 장면 흐름 (토치 1.8.1) |
|---|---|---|---|
| 구글 드라이브 | 구글 드라이브 | 구글 드라이브 | 구글 드라이브 |
python Test_img.py --loadmodel (finetuned PSMNet) --leftimg ./left.png --rightimg ./right.png

보고 된 3-PX 유효성 검사 오류는 코드가 아닌 Kitti의 공식 MATLAB 코드를 사용하여 계산되었습니다.
리더 보드 링크
| 방법 | 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, 전체 설정 및 기준선의 다양한 설정의 수용 필드를 시각화합니다.
전체 설정 : 확장 된 Conv, spp, 쌓인 모래 시계
기준선 : 확장 된 설득력, SPP, 스택 모래 시계 없음 없음
수용 필드는 적십자로 표시된 이미지 센터의 픽셀에 대해 계산되었습니다.

토론이나 우려 사항은 환영됩니다!