python生成图片

添加噪声和滤波

from PIL import Image,ImageDraw,ImageFont
from text_renderer_master.libs.config import load_config
from text_renderer_master.textrenderer.noiser import Noiser
from utils2 import create_repeat_number
import cv2
import random
import numpy as np
import gevent
import math
from gevent import monkeydef add_noise_blur(filename):"""添加噪声和滤波:param filename::return:"""im_new = cv2.imdecode(np.fromfile('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename, dtype=np.uint8), cv2.IMREAD_GRAYSCALE)cfg = load_config('./text_renderer_master/configs/default.yaml')noise = Noiser(cfg)im_new = noise.apply(im_new)num = [0, 1, 2]random_num = num[random.randint(0, 2)]if random_num == 0:cv2.imwrite('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename, im_new)elif random_num == 1:ks = [3, 5]ksize = random.choice(ks)sigmas = [0, 1, 2, 3, 4, 5, 6, 7]sigma = 0if ksize <= 3:sigma = random.choice(sigmas)im_new = cv2.GaussianBlur(im_new, (ksize, ksize), sigma)cv2.imwrite('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename, im_new)else:ks = [2, 3]kernel = random.choice(ks)im_new = cv2.blur(im_new, (kernel, kernel))cv2.imwrite('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename, im_new)

修改图片size

def resize_img(filename):"""修改图片size:param filename::return:"""img = cv2.imread('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename)scale = 4 / 7new_img = cv2.resize(img, None, fx=scale, fy=scale, interpolation=cv2.INTER_AREA)cv2.imwrite('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename, new_img)

生成图片并写上内容

def create_square_image(num):im = Image.open('templates/square_template2.jpg')draw = ImageDraw.Draw(im)font_type1 = ['font/simfang.ttf', 'font/simhei.ttf', 'font/simkai.ttf', 'font/simsun.ttc']font_type2 = ['font/arial.ttf', 'font/ARIALN.TTF', 'font/calibri.ttf', 'font/tahoma.ttf', 'font/times.ttf', 'font/simfang.ttf', 'font/simsun.ttc']ttfont1 = ImageFont.truetype(font_type1[random.randint(0, len(font_type1) - 1)], 22)ttfont2 = ImageFont.truetype(font_type2[random.randint(0, len(font_type2) - 1)], 30)x = random.randint(30, 180)y = random.randint(0, 17)content = '%09d'%random.randint(0, 999999999)draw.text((x, y), content, fill='black', font=ttfont2)filename = 'img_' + str(num) + '.jpg'im.save('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename)try:img = cv2.imread('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename)scale = 2/3new_image = cv2.resize(img, None, fx=scale, fy=scale, interpolation=cv2.INTER_AREA)cv2.imwrite('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename, new_image)except:raise Exception('create template1 error')im = Image.open('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename)box = (0, 0, 280, 32)region = im.crop(box)im1 = Image.new('RGB', (280, 32), color='white')im1.paste(region, (0, 0))im1.save('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename)with open('output.txt', 'a') as f:f.write(filename)f.write('  ')f.write("¥" + content + "\n")add_noise_blur(filename)def create_image(num):im = Image.open('88.jpg')m = random.randint(-70, 70)y = 120 - mbox = (27, y, 307, y + 32)region = im.crop(box)im1 = Image.new('RGB', (280, 32), color='white')im1.paste(region, (0, 0))draw = ImageDraw.Draw(im1)font_type1 = ['font/simfang.ttf', 'font/simhei.ttf', 'font/simkai.ttf', 'font/simsun.ttc']font_type2 = ['font/arial.ttf', 'font/calibri.ttf', 'font/tahoma.ttf', 'font/times.ttf', 'font/simfang.ttf','font/simsun.ttc']ttfont1 = ImageFont.truetype(font_type1[random.randint(0, len(font_type1) - 1)], 25)ttfont2 = ImageFont.truetype(font_type2[random.randint(0, len(font_type2) - 1)], 20)list = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '.']content = ''for i in range(10):content += list[random.randint(0, len(list)-1)]position_x = random.randint(100, 120)position_y = random.randint(2, 8)draw.text((position_x, position_y), content, fill='black', font=ttfont1)filename = 'img_' + str(num) + '.jpg'im1.save('/hulk/chenwanhui/wangyunmin/recogModel/train/images/' + filename)with open('output.txt', 'a') as f:f.write(filename)f.write('  ')f.write(content + "\n")add_noise_blur(filename)def create_template():im = Image.open('templates/square_template4.jpg')x = 290box = (x, 0, x + 25, 48)region = im.crop(box)im2 = Image.open('templates/square_template1.jpg')box = (0, 0, 420, 48)region2 = im2.crop(box)im3 = Image.new('RGB', (420, 48), color='white')im3.paste(region, (0, 0))im3.paste(region2, (25, 0))im3.save('templates2/square_template3.jpg')

去除图片中的字

def add_image_template1(image1, image2):"""删除需要替换的部分,构建合同模板:param image::return:"""im1 = Image.open(image1)im2 = Image.open(image2)size = im1.sizewidth = size[0]length = size[1]# 利用小矩形粘贴覆盖(距离需要完全一致)# box = (0,0,243,40)# region = im.crop(box)# im.paste(region, (1028,324,1271,364))# im.save('./000.jpg')# 利用颜色覆盖区域im1.paste('white', (1028, 324, 1271, 364))im1.paste('white', (451, 370, 538, 403))im1.paste('white', (453, 409, 853, 442))im1.paste('white', (455, 452, 1114, 486))im1.paste('white', (452, 492, 587, 520))im1.save('example_images/111.jpg')im3 = Image.open('example_images/111.jpg')im4 = Image.open('example_images/222.jpg')box = (0, 0, width, 1070)region = im3.crop(box)im4.paste(region, (0, 0, width, 1070))im4.save('img_template1.jpg')

python生成图片相关推荐

  1. python生成图片base64编码及阿里云验证码识别

    一.问题背景 自动化测试时,注册页面需要输入验证码,为此需要截取下验证码图片,然后调用识别出其中文字信息,以模拟输入 阿里云验证码识别api链接 通过此链接可以查看此api调用信息: 如下是api调试 ...

  2. python 生成图片人脸识别器

    python 生成图片人脸识别器 第一步导入引用 from tkinter import * from tkinter import filedialog from tkinter import me ...

  3. python 生成图片_python生成带有表格的图片

    因为工作中需要,需要生成一个带表格的图片 例如: 直接在html中写一个table标签,然后单独把表格部分保存成图片 或者是直接将excel中的内容保存成一个图片 刚开始的思路,是直接生成一个带有ta ...

  4. python生成图片链接_python如何将两张图片生成为全景图片

    本文实例为大家分享了python将两张图片生成全景图片的具体代码,供大家参考,具体内容如下 1.全景图片的介绍 全景图通过广角的表现手段以及绘画.相片.视频.三维模型等形式,尽可能多表现出周围的环境. ...

  5. Python生成图片到visio的矢量图

    python 保存为svg import matplotlib.pyplot as plt# 随意绘制一个样图 plt.plot([1,2,3,4,3,2,3])plt.savefig('fig1.s ...

  6. python生成图片链接_python 实现图片上传接口开发 并生成可以访问的图片url

    版本:python3.7 功能,开发一个用户访问的页面,支持图片上传,并将其保存在服务器. 项目结构: app.py文件内容如下: from flask import Flask, Response, ...

  7. 使用python生成图片验证码

    生成二进制流图片验证码 # 绘画库 from PIL import ImageDraw # 字体库 from PIL import ImageFont # 图片库 from PIL import Im ...

  8. Python 生成图片验证码(详解)

    1. 创建文件img_code.py 调用该函数随机生成图片信息,返回图片及文本验证码 import random from PIL import Image, ImageDraw, ImageFon ...

  9. Python和Matlab生成图片到visio的矢量图

    目录 1 概述 2 Python生成图片到visio的矢量图 2.1 python 保存为svg 2.2 svg 转emf 2.3 Visio编辑和修剪矢量波形图 3 Matlab生成图片到visio ...

最新文章

  1. mysql中的主从复制slave-skip-errors参数使用方法
  2. 一小段代码:父类和子类
  3. 2014年湖北省TI杯大学生电子设计竞赛论文格式
  4. C++常用函数的使用方法小结
  5. Vue——Windows 10下Vue项目启动步骤[vue-cli-service启动版本]
  6. 移植U-Boot思路和实践 | 基于RK3399
  7. 仿拉钩app(一)---爬虫数据准备
  8. 最小公倍数的求解原理和证明
  9. ubuntu 上NVIDIA驱动和CUDA9.0 的坑之一二
  10. 得到当前python解释器的路径
  11. Perl的Net::SSH::Perl模块实现远程登陆ssh
  12. 铁路售票系统的设计分析(时序图、类图)
  13. 裴礼文《数学分析中的典型问题与方法》 P1~31
  14. 裤子尺码对照表eur40_裤子尺寸对照表,衣服尺寸对照表,服装尺寸对照表- 尺码对照表...
  15. springboot基于微信小程序的高校学生疫情在校封闭管理系统的设计与实现毕业设计源码240904
  16. Python3图片中竖排文字
  17. 坚果pro官方固件_坚果Pro线刷包_坚果Pro刷机包_坚果Pro固件包_坚果Pro救砖包 - 线刷宝ROM中心...
  18. 采集商标网的10个经典方法
  19. 饥荒控制台输入没用_饥荒联机版代码怎么用 代码输入没用解决方法
  20. One Pixel Attack(对抗攻击) —— 使用差分进化算法寻找最优解

热门文章

  1. Apache JMeter压测工具
  2. 动态IP与静态IP的区别
  3. PTA 帅到没朋友 (20分)
  4. java邮箱发送验证码_java实现发送邮箱验证码——三步搞定java邮箱发送验证码
  5. LCN分布式事务学习0-分布式事务理论基础
  6. LeetCode——223. 矩形面积(Rectangle Area)[中等]——分析及代码(C++)
  7. 修复迅雷看看xmp.rmvb视频文件错误关联
  8. OpenCV中threshold自动阈值,类似matlab中的graythresh
  9. Eclipse中文语言包下载后怎么使用
  10. 在计算机中文字的表示