我正在编写一个程序来模拟跟踪目标后的追踪者的移动。追踪者应该有一个摄像头,并根据目标图像,它跟随目标。
现在,我在方形中使用了4个平面点来表示追踪者的相机。因此,对于追逐,我在3D图中更新这4个点的位置来表示追踪者的移动。
我想知道是否可以导入一张实际相机的图片,并使用它而不是现在的4点,以达到审美目的?如果是,怎么样?
我对MATLAB不是很熟悉,所以如果你的答案可以详细而具体,我会很感激。提前致谢
答案 0 :(得分:3)
以下是一个简单示例(基于this):
%# grayscale image
img = imread('cameraman.tif');
%# x/y/z coords of image corners
[X,Z,Y] = meshgrid([-1 1],[1 -1],0);
%# plot image in 3D space
figure, colormap gray
h = surf(X,Y,Z,img, 'CDataMapping','scaled', ...
'FaceColor','texturemap', 'EdgeColor','none');
set(gca, 'XLim',[-2 2], 'YLim',[-4 0], 'ZLim',[-2 2], 'Box','on')
%# move image along the Y-dimension
t = linspace(0,-4,20);
for i=1:numel(t)
set(h, 'YData',t(i)*ones(size(Y)))
pause(.1)
end
我创建了结果的动画,我甚至使用了相机图像:)