python实现拼合两个文件夹中的图片,保存到新文件夹中。
python实现拼合两个文件夹中的图片(可批量处理多个文件夹)
近期因为课题的需要,自己要将多个文件夹中的图片两两拼合(左右拼合),具体的问题是这样的:我有5个装有图片的文件夹,每个文件夹里50张图片,现在我需要将5个文件夹两两组合(可以自己跟自己组合,一共25种组合),然后左边图片的文件夹不改变,右边图片的文件夹里面的图片用random.shuffle()方法进行打乱五次。这样每两个文件夹组合得到的250张图片。
实现图片拼合的原理
实现图片拼合的方法:首先用os.listdir()导入图片所在文件路径,这样方便后面读取图片,读取到图片后,用PIL 包和matplotlib包中的方法将图片转换成多维数组形式,这样就能将两个图片拼接的问题转换成两个多维数组的合并,然后再用Image.fromarray()将多维数组给转换成图片,这样就大功告成了。
需要拼接的图片
文件夹中50个图片
先看看最终效果图:
最终效果是两个图左右拼合,得到的图宽度不变,高度按较高的为准,图片高度不够的用黑底上下对称填充。
-
目标文件夹 ,我合并的五个文件夹;
-
最终得到文件夹结果图片 新文件夹的命名是以合并两个文件夹的名字拼接得到的;