如何获得立体图像视差图
答案:2 悬赏:70 手机版
解决时间 2021-01-31 21:33
- 提问者网友:临风不自傲
- 2021-01-31 13:25
如何获得立体图像视差图
最佳答案
- 五星知识达人网友:慢性怪人
- 2021-01-31 13:47
做个简单的例子,希望有所帮助。
clc; clear all; close all;
I1 = imread('c:\\left.jpg');
I2 = imread('c:\\right.jpg');
I(:, :, 1) = imsubtract(I1(:, :, 1), I2(:, :, 1));
I(:, :, 2) = imsubtract(I1(:, :, 2), I2(:, :, 2));
I(:, :, 3) = imsubtract(I1(:, :, 3), I2(:, :, 3));
Ir = rgb2gray(I);
figure;
subplot(2, 2, 1); imshow(I1);
title('左眼视图');
subplot(2, 2, 2); imshow(I2);
title('右眼视图');
subplot(2, 2, 3); imshow(I);
title('视差视图');
subplot(2, 2, 4); imshow(Ir);
title('视差视图');
clc; clear all; close all;
I1 = imread('c:\\left.jpg');
I2 = imread('c:\\right.jpg');
I(:, :, 1) = imsubtract(I1(:, :, 1), I2(:, :, 1));
I(:, :, 2) = imsubtract(I1(:, :, 2), I2(:, :, 2));
I(:, :, 3) = imsubtract(I1(:, :, 3), I2(:, :, 3));
Ir = rgb2gray(I);
figure;
subplot(2, 2, 1); imshow(I1);
title('左眼视图');
subplot(2, 2, 2); imshow(I2);
title('右眼视图');
subplot(2, 2, 3); imshow(I);
title('视差视图');
subplot(2, 2, 4); imshow(Ir);
title('视差视图');
全部回答
- 1楼网友:平生事
- 2021-01-31 15:12
视场变化主要是通过找出每对图像间的对应关系,根据三角测量原理,得到视差图;在获得了视差信息后,根据投影模型很容易地可以得到原始图像的深度信息和三维信息。立体匹配技术被普遍认为是立体视觉中最困难也是最关键的问题,主要是以下因素的影响:(1) 光学失真和噪声(亮度、色调、饱和度等失衡)(2) 平滑表面的镜面反射(3) 投影缩减(foreshortening)(4) 透视失真(perspectivedistortions)(5) 低纹理(lowtexture)(6) 重复纹理(repetitive/ambiguouspatterns)(7) 透明物体(8) 重叠和非连续
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯