python截取图片一部分生成新的图片_python批量裁剪图片

python截取图片一部分生成新的图片_python批量裁剪图片在 Python 中 你可以使用 PIL Python Imaging Library 库来读取图片的大小 并根据需要裁剪图片 以下是一个简单的示例代码 展示了如何使用 PIL 库来读取图片并裁剪为固定尺寸的小图片 pythonfrom PIL import Image 打开大图片 im Image open big image jpg 设置小图片的大小 这里是

在Python中,你可以使用PIL(Python Imaging Library)库来读取图片的大小,并根据需要裁剪图片。以下是一个简单的示例代码,展示了如何使用PIL库来读取图片并裁剪为固定尺寸的小图片:

 from PIL import Image 打开大图片 im = Image.open('big_image.jpg') 设置小图片的大小(这里是 100x100) width, height = 100, 100 循环切割图片 for i in range(0, im.width, width): for j in range(0, im.height, height): 切割出小图片 cropImg = im.crop((i, j, i + width, j + height)) 保存裁剪后的小图片 cropImg.save(f'pic/{i // width + 1}_{j // height + 1}.png') 

这段代码首先导入了PIL库中的Image模块,然后使用`Image.open`函数打开名为`big_image.jpg`的大图片。接着,代码设置了想要裁剪的小图片的尺寸(这里是100x100像素)。之后,代码通过两个嵌套的for循环来遍历大图片,并在每次迭代中裁剪出尺寸为100x100像素的小图片,然后将其保存为`pic`目录下以`图片序号.png`命名的文件。

如果你需要随机截取图片的一部分,可以使用OpenCV库,如下所示:

 import cv2 import random 读取图片 img = cv2.imread('1.png') 设置想要截取的图片大小 h, w = 80, 80 循环随机截图 count = 1 while True: 随机产生x,y坐标 y = random.randint(1, img.shape - h) x = random.randint(1, img.shape - w) 随机截图 cropImg = img[y:y + h, x:x + w] 保存裁剪后的图片 cv2.imwrite(f'pic/{count}.png', cropImg) count += 1 if count == 2500: break 

这段代码使用OpenCV库读取图片,并在循环中随机生成x和y坐标来截取图片的一部分,然后将裁剪后的图片保存为`pic`目录下的文件。

请根据你的具体需求选择合适的库和方法来截取图片。

编程小号
上一篇 2024-12-26 20:56
下一篇 2024-12-26 20:51

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/144350.html