从一小批对象和背景生成数千个新的2D图像。

flip-data的Python项目详细描述


翻转

Python supported

使用Flip生成合成数据!从一小批对象和背景中生成数千个新的2D图像。在

安装

使用pip安装Flip:

pip install flip-data

依赖性

Flip要求:

  • Python(>;=3.7)
  • 开放式CV(gt;=4.3.0)
  • 数量(>;=1.19.1)

快速入门(Example

要尝试Flip library,可以运行examples/data_generator.py。 您需要添加背景图像和对象来组成新的训练数据集,然后 将它们放在以下目录中:

^{pr2}$

Flip的主要工作流程是创建变压器,然后按如下方式执行:

## Import Flip transformersimportflip.transformersastrOUT_DIR="examples/result"...## Create Child transformerstransform_objects=[tr.data_augmentation.Rotate(mode='random'),tr.data_augmentation.Flip(mode='y'),tr.data_augmentation.RandomResize(mode='symmetric_w',relation='parent',w_percentage_min=0.2,w_percentage_max=0.5)]## Create main transformertransform=tr.Compose([tr.ApplyToObjects(transform_objects),tr.domain_randomization.ObjectsRandomPosition(x_min=0,y_min=0.4,x_max=0.7,y_max=0.7,mode='percentage'),tr.data_augmentation.Flip('x'),tr.domain_randomization.Draw(),tr.labeler.CreateBoundingBoxes(),tr.io.CreateJson(out_dir=OUT_DIR,name='img_generate.jpg'),tr.io.CreateJson(out_dir=OUT_DIR,name='json_generated.jpg')])## Execute transformationsel=tr.Element(image=...,objects=...)[el]=transform(el)

Object

变压器

主变压器为:

  • 变压器
  • 撰写
  • 应用对象

顺便说一句,所有的转换器都将在class Element的对象上执行,并将返回一个新的transformed元素。在

数据扩充

  • 翻转:沿x或y轴翻转图元。在
  • RandomResize:随机更改元素的大小。在
  • 旋转:随机旋转元素。在

随机域

  • 绘制:在背景元素上绘制对象,将它们合并到一个新的图像中。在
  • ObjectsRandomPosition:在背景元素上设置对象的随机位置。在

贴标机

  • CreateBoundingBoxes:围绕背景元素包含的对象绘制边界框。在

IO

  • SaveImage:用新生成的图像保存一个.jpg文件。在
  • Json:将生成的标签另存为Json。在
  • Csv:将生成的标签另存为Csv。在

想要贡献或者有任何疑问或反馈?在

如果你想了解更多信息,请发邮件给我flip@linkedai.co

报告问题

请通过reporting any issues帮助我们使用Flip。在

许可证

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android:如何写入特定行,Java   Java中从欧元货币字符串中删除空格的数字   Java非均匀多维数组   解密AES时出现java空指针异常   java ConcurrentModificationException尝试移除列表上的所有内容时(非迭代)   Java数学库计算日志   java ISO8601,使用Jackson以毫秒表示json   避免副作用的java最佳实践   java获取JMeterException:调用bsh方法时出错:未定义参数:saa。使用beanshell取样器时   使用javascript将会话从一个jsp页面传输到另一个jsp页面   java在列表中组合相邻元素   java多行JTextPane   java Hibernate映射文件连接两个表而不定义关系?   如何使用Ajax、Java和Spring框架将文件从网页上传到Google云存储   多线程多线程Java中producerconsumer代码的多线程没有提供正确的输出?