EDITTED:
斐伊川, 抱歉没有提到它,我需要做的是同时在同一个图中显示6个图像。 此外,在每个图像(帧)我需要绘制一些点(我的代码跟踪脸部的动作 - 眼睛,鼻子,嘴唇。) 我有246张图像(帧)
这是我使用的主要功能:
// The points/ coordinates of the lips, eyes and nose of the image "i".
Points = createPointsStructure (landmarks , i , NumOfLandarkPerFrame);
// Draw landmarks and splines on the frame i (and draw/show the frame)
DrawAllPointsOnFace (pointArr , Points , img , 1 , position, i);
任何想法我该怎么做?
我需要编写一个代码,在同一个图中显示6个图像(同时)。并让用户选择其中一个图像进行编辑(点击它)。
任何帮助我该怎么办?
提前致谢。
答案 0 :(得分:14)
这是一个简单的例子,可以帮助您入门:
function ImagesExample()
%# read images in a cell array
imgs = cell(6,1);
for i=1:6
imgs{i} = imread( sprintf('AT3_1m4_%02d.tif',i) );
end
%# show them in subplots
figure(1)
for i=1:6
subplot(2,3,i);
h = imshow(imgs{i}, 'InitialMag',100, 'Border','tight');
title(num2str(i))
set(h, 'ButtonDownFcn',{@callback,i})
end
%# mouse-click callback function
function callback(o,e,idx)
%# show selected image in a new figure
figure(2), imshow(imgs{idx})
title(num2str(idx))
end
end
要研究的另一个功能是来自IPT工具箱的MONTAGE功能:
%# given the above cell array `imgs`
montage( cat(4,imgs{:}) )