matlab disparity,Reconstruct 3-D scene from disparity map

Load the stereo parameters.

load('webcamsSceneReconstruction.mat');

Read in the stereo pair of images.

I1 = imread('sceneReconstructionLeft.jpg');

I2 = imread('sceneReconstructionRight.jpg');

Rectify the images.

[J1, J2] = rectifyStereoImages(I1,I2,stereoParams);

Display the images after rectification.

figure

imshow(cat(3,J1(:,:,1),J2(:,:,2:3)),'InitialMagnification',50);

6372f036307d6110aac2e2e1807da8c1.png

Compute the disparity.

disparityMap = disparitySGM(im2gray(J1),im2gray(J2));

figure

imshow(disparityMap,[0,64],'InitialMagnification',50);

48c6e46822df0144a1cb424d3ac3ca6d.png

Reconstruct the 3-D world coordinates of points corresponding to each pixel from the disparity map.

xyzPoints = reconstructScene(disparityMap,stereoParams);

Segment out a person located between 3.2 and 3.7 meters away from the camera.

Z = xyzPoints(:,:,3);

mask = repmat(Z > 3200 & Z < 3700,[1,1,3]);

J1(~mask) = 0;

imshow(J1,'InitialMagnification',50);

0161b59d85fdbf0f21616941fd39e45c.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值