美文网首页
自动生成测试数据之图片篇

自动生成测试数据之图片篇

作者: 阿萨杂谈 | 来源:发表于2022-01-14 12:55 被阅读0次

大家好,我是阿萨。测试过程中经常用到需要测试图片的地方。每次找不同的图片费时费力。所以就萌生了自己造测试数据的想法,因为最近一直用python 就在网上查看了python生成随机 图片的例子。 先讲一个失败的例子。

自己查看了比较简单的图片生成代码:

python随机生成图片

#-*-coding:utf-8-*-

import tensorflow as tf

import numpy as np

import cv2

image = tf.random.uniform([200, 200, 3],minval=1,maxval=255, dtype=tf.int32)

with tf.Session()as sess:

    myImage=sess.run(image)

    print(myImage)

    cv2.imwrite("test.jpg", myImage)

结果啥都没有。这个具体问题分析还有点困难。因为时间关系,先不研究它失败的根因,等有时间了再详细分析下。各位如果有能发现问题的,也请私信告诉我。谢谢大家。

那就再找找看有没有其他简单方便的图片生成代码呢?

发挥搜索引擎的巨大优势。 发现PIL. Image是个好东西,可以打开,保存以及生成图片。并且可以生成纯色的图片。不像上面的随机生成的花里胡哨的噪音图片。觉得这个有戏。

先看了下这个库比较简单的功能。

主要有:

open 打开图片

rotate 旋转图片

thumbnail 生成需要大小的缩略图

blend 通过常量alpha在两个图像之间插入来创建新图像。

new 创建具有给定模式和大小的新图像。

fromarray 从导出数组接口的对象(使用缓冲区协议)创建图像内存。

from bytes从缓冲区中的像素数据创建图像内存的副本。

copy复制此图像。

crop 返回图像中的矩形区域。框是定义左,上,右和下像素坐标的四元祖。

show 显示此图片。主要用于调试。

save在给定文件名下保存此图像

方法太多了……大家感兴趣的自己查找资料学习下。

重点看下这次我用的代码。

def generateImage(imageCount, imagePath):

COLORLIST = ['blue', 'green', 'purple', 'yellow', 'red', 'pink', 'palegoldenrod', 'palegreen', 'paleturquoise',

                'palevioletred', 'papayawhip', 'peachpuff', 'peru',

                'brown', 'beige', 'chocolate', 'gold', 'Lavender', 'maroon', 'Lightskyblue',

                'orange', 'violet', 'lavender',

                'white', 'ivory', 'gray', 'wheat', 'WhiteSmoke', 'yellowgreen', 'beige', 'lightpink', 'cyan',

                'khaki', 'grey', 'navy', 'plum', 'powderblue', 'rosybrown']

for iin range(imageCount):

img = Image.new('RGBA', (640, 480), COLORLIST[i])

img.save(imagePath +'/' + COLORLIST[i] +'.png')

return True

生成5张照片的截图如下:

目标达成。

相关文章

网友评论

      本文标题:自动生成测试数据之图片篇

      本文链接:https://www.haomeiwen.com/subject/lasacrtx.html