question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[Feature request] First stereo model: PSMNet

See original GitHub issue

🚀 Feature

Kornia already has a set of exciting deep learning based models implemented.

I would like to add to Kornia the first stereo model: PSMNet. PSMNet is used in many stereo research papers as a strong comparison baseline and this will play nice together with the kornia.geometry.camera.StereoCamera module as well.

Motivation

Getting a stereo model in Kornia will promote Kornia to the go-to library for research into modern deep learning based stereo models.

Pitch

PSMNet is already open source implemented here.

This ticket will adapt the code in that repo to work in kornia.contrib. Specefically, the implementation should look like:

class PSMNet(nn.Module):
    def __init__(self, pretrained: str,  max_disparity: int, model: str = "stackhourglass"):

    def forward(left_rectified_image_batch, right_rectified_image_batch):
    

Ideally I would also like to see a general purpose function disparity_regression that goes from a general cost volume to the disparity tensor. This is already implemented in above mentioned repository, but will be useful to have as a separate module for other stereo models.

Additional context

See the repository:

https://github.com/JiaRenChang/PSMNet


Consider also to contribute to Kornia universe projects 😃

With this model implemented, a nice tutorial cold be written that goes from rectified input images to disparity map to point cloud using PSMNet and the StereoCamera module.

  • Tutorials: our repository containing the tutorials.

Issue Analytics

  • State:open
  • Created 2 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
copaahcommented, Nov 11, 2021

@ducha-aiki

Okay. I’ll research some models falling into category 1, i.e. fast SOTA stereo models that preferably generalizes well.

1reaction
ducha-aikicommented, Nov 9, 2021

I’d say 1 is priority, some cool types of 2 is good to have, as well as original models which are close to 3.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Revisiting Domain Generalized Stereo Matching Networks ...
Domain generalization performance of PSMNet with and without our method on samples from (a) KITTI, (b) Middle- bury, and (c) ETH3D training sets....
Read more >
Pyramid Stereo Matching Network
To tackle this problem, we propose PSMNet, a pyramid stereo ... LeCun 2015) first introduced the deep network to extract image features and ......
Read more >
A stereo matching algorithm based on the improved PSMNet
Deep learning based on a convolutional neural network (CNN) has been successfully applied to stereo matching. Compared with the traditional ...
Read more >
Efficient Multi-Scale Stereo-Matching Network Using ...
First, most state-of-the-art stereo models employ ... neural networks (CNNs) have been used to learn strong feature representation [8,9] to ...
Read more >
LANet: Stereo matching network based on linear-attention ...
The application of CNNs to stereo matching was first proposed by ... PSMNet uses average pooling to compress features to four scales, ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found