MATLAB - Going from a disparity map to point cloud from stereo images on HELP!

12 visualizzazioni (ultimi 30 giorni)
Hi all, I need help with my stereoscopic 3-D reconstruction project, I'm currently stuck on the reconstructing a 3-D point cloud part. I have been given a pair of stereo images of the back of an eye, and I need to produce a 3D point cloud from them, I have got up to the disparity map, not sure if its optimal?
Here is what I've done so far:

Risposte (2)

Gautham Sholingar
Gautham Sholingar il 16 Mag 2017
Another possible way to approach this problem is to use the following function from the Computer Vision System Toolbox which allows you to create a real-world 3D co-ordinate model from the disparity data:
As far as being optimal, you will need to explain what optimal means and evaluate this yourself. Try comparing the derived point-cloud to an expected model and see if this helps you evaluate the result.
  2 Commenti
Haseeb Majid
Haseeb Majid il 21 Mag 2017
I have that toolbox installed, but how would I produce a point cloud from that disparity map?
UBAID ULLAH
UBAID ULLAH il 15 Mar 2018
I am running your code but i am getting a error. can you help me to solve it.
Error using zeros Requested 55033x54541 (11.2GB) array exceeds maximum array size preference. Creation of arrays greater than this limit may take a long time and cause MATLAB to become unresponsive. See array size limit or preference panel for more information.
Error in cvalgMatchFeatures>metricSSD (line 507) scores = zeros(N1, N2, outputClass);
Error in cvalgMatchFeatures>exhaustiveDistanceMetrics (line 186) scores = metricSSD(features1, features2, N1, N2, outputClass);
Error in cvalgMatchFeatures>findMatchesExhaustive (line 137) scores = exhaustiveDistanceMetrics(features1, features2, N1, N2, outputClass, metric);
Error in cvalgMatchFeatures (line 52) [indexPairs, matchMetric] = findMatchesExhaustive(features1,features2, ...
Error in matchFeatures (line 177) cvalgMatchFeatures(features1, features2, ...
Error in disparitymap (line 23) indexPairs = matchFeatures(features1, features2);
this was the error

Accedi per commentare.


Munin
Munin il 3 Set 2021
@Hanieh Shabanian @Haseeb Majid the solution is simple:
disparityMap(disparityMap > 12) = 0;

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by