tensorflow - 如何使用 tensorflow 对象检测 api 添加自定义增强?
问题描述
目前,在使用 TensorFlow 对象检测 API 的预处理步骤中不支持 Cutout 图像增强。
我的问题是:
1. 如何向 TensorFlow 对象检测预处理器添加自定义增强(在本例中为 Cutout)?
我试图遵循:
https://github.com/tensorflow/models/commit/ec4b78f3e7030184b255099c369c52e9b404d71f
在遵循该拉取请求并protoc object_detection/protos/*.proto --python_out=.
在 protoc 目录中运行之后
并尝试使用我在目标检测器训练期间实现的剪切增强,我收到以下错误:
google.protobuf.text_format.ParseError: 140:5 : Message type "object_detection.protos.PreprocessingStep" has no field named "CutOut".
另外,对于 Cutout 的实现,我正在使用https://www.tensorflow.org/addons/api_docs/python/tfa/image/cutout
非常感谢任何帮助和指导!:-)
解决方案
我对 Tensorflow 的对象检测 API 没有那么丰富的经验,但我认为您可以添加一个名为“random_black_patches”的增强,类似于 cutout。你可以在这里的原型中看到它。
如果你看到参数,你可以看到你控制了补丁的数量、概率和纵横比。
我在我pipeline.config
的如下使用它:
train_config {
batch_size: 4
data_augmentation_options{
random_black_patches {
}
}
}
推荐阅读
- emacs - 否定谓词和肯定谓词
- django - 创建一个字符串,其中包含来自相关对象的值以显示在视图中
- php - 在装配付款 make_payment API 上出现错误
- angular - 接口数组数组
- c# - 当我从 Quartz.net 作业调用方法(创建 excel)时,HttpContext 为空
- kotlin - 接口/实现的序列化器
- javascript - 悬停在 Scrollbar VanillaJS 上时调用 Mouseleave
- arrays - 使用 CosmosDB 对 2D 结果集中的列求和
- javascript - 如何在 HTML 上忽略匹配的隐藏对象?
- sortablejs - 嵌套列表(树) - 如何通过向右拖动来嵌套元素?