在深度学习训练中数据是一个很重要的因素,在数据不够时需要我们基于现有的数据进行增强生成新的数据。此外,在某特殊情况,如对某些目标切片数据(例如:石块分割切片)预测效果较差,需要增强其在训练数据中的频率。故此,我们可以将先有数据标注中的目标裁剪出来,作为样本粘贴到其他的背景图像中生成新的训练数据。同时,我们还实现了目标切片移除方法,基于该方法可以在没有外部数据的情况下生成背景图片,也可以用于检验数据标注是否完全正确。
1、目标切片生成
目标裁剪需要根据json标注的格式进行提取,以下代码将sk_new目录下的标注数据中的sk类别全部裁剪出来保存到crops目录下。
import cv2
import json
import numpy as np
import os
#石块裁剪函数
def imgcrop(root,fpath):