京东电商的主图需要800*800和624*800两种不同的尺寸(不同类目有所不同),

得到的素材是一份800*800的图片,手动裁剪成624*800效率太低了,

python又派上用场了!

用cv2模块,可以快速将图片裁剪成所需要的大小,至于裁剪的位置嘛,需要事先计算一下。

改进方向:自动按中间的位置裁剪,再升级可以改进为自动识别中心位置并进行裁剪

import cv2
img = cv2.imread("./cut/1.jpg")
print(img.shape)
cropped = img[0:800, 88:712] # 裁剪坐标为[y0:y1, x0:x1]
cv2.imwrite("./out/1_o.jpg", cropped)

运行结果:

裁剪完成之后图片就是624*800的了。

超级方便吧~

升级版:批量裁剪

【python】批量裁剪图片为指定大小,按位置截取,cv2 (点我跳转链接)

平移translate 翻转flip 图像的仿射变换Affine transformation基本图像处理1. 缩放scale缩放通过 cv2 .resize()实现函数说明: cv2 .resize(src, dsize[, dst[, fx[, fy[, interpolation]]]]) -> dst 参数说明: src -
在这篇文章里我们聊一下 Python 实现 图片 裁剪 的两种方式,一种利用了Pillow,还有一种利用了 OpenCV 。两种方式都需要简单的几行代码,这可能也就是现在 Python 那么流行的原因吧。 首先,我们有一张原始 图片 ,如下图所示: 原始 图片 然后,我们利用 OpenCV 对其进行 裁剪 ,代码如下所示: import cv2 img = cv2 .imread("./data/cut/thor.j...
python 中,使用 OpenCV 库中的 cv2 .imread() 函数读取图像, cv2 .imshow() 函数显示图像, cv2 .imwrite() 函数保存图像,然后使用 numpy 库中的索引和切片功能来 裁剪 图像。 下面是一个示例: import cv2 #读取 图片 img = cv2 .imread("example.jpg") # 裁剪 位置 大小 x = 100 y = 200 w ...
cv2 .imshow("before cut",img) cv2 .waitKey(0) img=img[10:650,300:600] # 第一个范围表示高度 第二个范围表示宽度 cv2 .imshow("after cut",img) cv2 .imwrite("cutimage",img) cv2 .waitKey(0)...
文章目录前言一、手动单张 裁剪 / 截取 二、根据 图片 位置 坐标进行 裁剪 / 截取 三、 opencv 获取边缘并根据bounding box 截取 / 裁剪 目标四、用YOLO目标检测框 裁剪 批量 保存总结 在计算机视觉任务中,如图像分类,图像数据集必不可少。自己采集的 图片 往往存在很多噪声或无用信息会影响模型训练。因此,需要对 图片 进行 裁剪 处理,以防止 图片 边缘无用信息对模型造成影响。本文介绍几种 图片 裁剪 的方式,供大家参考。 一、手动单张 裁剪 / 截取 selectROI:选择感兴趣区域,边界框框选x,y,w,h selectR