Implementación de PyTorch de nuestro artículo:
Correlación y excitación: coincidencia estéreo en tiempo real mediante excitación de volumen de costos guiada
Autores: Antyanta Bangunharcana 1 , Jae Won Cho 2 , Seokju Lee 2 , In So Kweon 2 , Kyung-Soo Kim 1 , Soohyun Kim 1
1 laboratorio MSC, 2 laboratorios RVC, Instituto Avanzado de Ciencia y Tecnología de Corea (KAIST)
Conferencia internacional IEEE/RSJ sobre robots y sistemas inteligentes (IROS), 2021
[Página del proyecto] | [Papel]
Proponemos una excitación de volumen de costo guiada (GCE) y una regresión de disparidad top-k soft-argmax para una coincidencia estéreo precisa y en tiempo real.
Recomendamos utilizar conda para la instalación:
conda env create -f environment.yml
conda activate coex
Nuestros pesos de SceneFlow previamente entrenados se pueden descargar a través del siguiente enlace:
Nuestro modelo logra un nuevo EPE (Error de punto final) de SceneFlow de 0,596, mejorando el EPE anterior de 0,69 informado en el artículo original.
Para obtener una demostración de nuestro código en el conjunto de datos KITTI, descargue los "[datos sincronizados+rectificados]" de los datos KITTI sin procesar. Descomprima y coloque las carpetas extraídas siguiendo el árbol de directorios a continuación.
Conjunto de datos de flujo de escena
Descargue los datos del paso final del conjunto de datos de Sceneflow, así como los datos de Disparidad .
KITTI 2015
Descargue el conjunto de datos kitti15 y descomprima data_scene_flow.zip, cámbiele el nombre a kitti15 y muévalo al directorio SceneFlow como se muestra en el árbol a continuación.
KITTI 2012
Descargue el conjunto de datos kitti12. Descomprima data_stereo_flow.zip, cámbiele el nombre a kitti12 y muévalo al directorio SceneFlow como se muestra en el árbol siguiente.
Asegúrese de que los nombres de los directorios coincidan con el árbol siguiente para que los cargadores de datos puedan ubicar los archivos.
En nuestra configuración, el conjunto de datos está organizado de la siguiente manera
../../data
└── datasets
├── KITTI_raw
| ├── 2011_09_26
| │ ├── 2011_09_26_drive_0001_sync
| │ ├── 2011_09_26_drive_0002_sync
| | :
| |
| ├── 2011_09_28
| │ ├── 2011_09_28_drive_0001_sync
| │ └── 2011_09_28_drive_0002_sync
| | :
| | :
|
└── SceneFlow
├── driving
│ ├── disparity
│ └── frames_finalpass
├── flyingthings3d_final
│ ├── disparity
│ └── frames_finalpass
├── monkaa
│ ├── disparity
│ └── frames_finalpass
├── kitti12
│ ├── testing
│ └── training
└── kitti15
├── testing
└── training
El modelo KITTI previamente entrenado ya está incluido en './logs'. Correr
python demo.py
para realizar una coincidencia estéreo en la secuencia raw kitti. Aquí hay un resultado de ejemplo en nuestro sistema con RTX 2080Ti en Ubuntu 18.04.
Para obtener más resultados de demostración, consulte nuestra página de Proyecto
Para volver a entrenar el modelo, configure './configs/stereo/cfg_yaml', por ejemplo, tamaño de lote, rutas, número de dispositivo, precisión, etc. Luego ejecute
python stereo.py
Si encuentra nuestro trabajo útil en su investigación, considere citar nuestro artículo.
@inproceedings{bangunharcana2021correlate,
title={Correlate-and-Excite: Real-Time Stereo Matching via Guided Cost Volume Excitation},
author={Bangunharcana, Antyanta and Cho, Jae Won and Lee, Seokju and Kweon, In So and Kim, Kyung-Soo and Kim, Soohyun},
booktitle={2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
pages={3542--3548},
year={2021},
organization={IEEE}
}
Parte del código se adopta de trabajos anteriores: PSMNet, AANet, GANet, SpixelFCN