python实现从几张图片随机裁剪出上百上千张特定尺寸大小的图片(不超20行)可用于生成负样本

@[TOC]不超20行代码实现,有问题的评论戳我,有空必回

先上结果

在这里插入图片描述

再上代码

#!/usr/bin/python3
#-*- coding: utf-8 -*-
# 程序开发时间:2018/11/23       修改时间:2018/11/23
# user: cgh
from PIL import Image
import random
count = 0  ##计算生成图片数
num=0       ## 现在对哪张图片进行裁剪(图片已经按序号顺序排列在文件夹下)
num_eve = 0  ##各图片目前裁剪出几张了
while 1:
    img = Image.open('C:/Users/Administrator/Desktop/practice_img/%s.jpg' % str(num+1))  # 打开当前路径图像
    xyl = [random.randint(1,img.size[0]), random.randint(1,img.size[1])]
    if xyl[0]+64<=img.size[0] and xyl[1]+64<=img.size[1]:
        box1 = (xyl[0], xyl[1], xyl[0]+64, xyl[1]+64) # 设置图像裁剪区域 (x左上,y左上,x右下,y右下)
        image1 = img.crop(box1) # 图像裁剪
        image1.save('C:/Users/Administrator/Desktop/practice_img/%saux.jpg' %str(count+1)) # 存储裁剪得到的图像
        count+=1; num_eve+=1
        print("successfully save %sth pic" %str(count))
    if num_eve== 3:  num_eve=0 ; num += 1             #设定num_eve为每张图片需要裁剪出的图片数
    if num==3:      exit(0)
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值