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

6 次查看(过去 30 天)
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:

回答(2 个)

Gautham Sholingar
Gautham Sholingar 2017-5-16
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 个评论
Haseeb Majid
Haseeb Majid 2017-5-21
I have that toolbox installed, but how would I produce a point cloud from that disparity map?
UBAID ULLAH
UBAID ULLAH 2018-3-15
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

请先登录,再进行评论。


Munin
Munin 2021-9-3
@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