[英]How can I concatenate images in one matrix in MATLAB?
我有64张图片(他们的名字是这样的:00001.jpg,...,00064.jpg)。 我想用这些图像创建一个矩阵,它将给出以下结果:
[img1 img2 ... img8
img9 img10 ...img16
...
img57 ........img64]
我尝试过horzcat(),imtile(),蒙太奇()方法,但是这些给了我不想要的结果。
我希望有一个带图像的8x8矩阵。 我想使用Matlab以编程方式进行上述操作,但无法找到任何解决方案。
我怎样才能做到这一点? 谢谢!
图像基本上是矩阵。
这是你连接2个矩阵的方法( 链接 )
A = ones(1,4);
B = zeros(1,4);
C = [A B]; //Horizontal
D = [A; B]; //Vertical
使用此逻辑可水平和垂直连接矩阵。
说,你应该知道矩阵大小及其不匹配问题。
函数imtile是你想要的。 您对8x8尺寸的期望不正确。 以下面的例子为例。
A = magic(2);
>> imtile({A,A,A,A})
ans =
1 3 1 3
4 2 4 2
1 3 1 3
4 2 4 2
由于imtile接受ImageDatastore,最简单的方法是:
imds = imageDatastore(pathToYourImages)
tiledImage = imtile(imds);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.