如何解决使用 TFRecord 格式的裁剪图像是否有任何负面影响?
TensorFlow 对象检测 API 需要 TFRecord 图像裁剪属性,如下所示:
async Task<string> GetStuffAsync()
{
var client = new HttpClient();
var cts = new CancellationTokenSource();
string output = null;
// Define the dataflow block
var block = new ActionBlock<string>(async url =>
{
string response = await client.GetStringAsync(url,cts.Token);
Console.WriteLine($"{url} => {response}");
if (response != "null")
{
// Found the desired output
output = response;
cts.Cancel();
}
},new ExecutionDataflowBlockOptions()
{
CancellationToken = cts.Token,MaxDegreeOfParallelism = 10 // Configure this to a desirable value
});
// Feed the block with URLs
for (int i = 0; i < 60000; i += 256)
{
block.Post("http://localhost:7075/api/Function1?index=" + i.ToString());
}
block.Complete();
// Wait for the completion of the block
try { await block.Completion; }
catch (OperationCanceledException) { } // Ignore cancellation errors
return output;
}
但我有一个预先裁剪图像的数据集(因为在每个图像中只显示要分类的对象)。在提供 xmin ymin 为 0 和 xmax ymax 裁剪图像大小的预裁剪图像数据的训练过程中会不会有任何缺点?我主要关心的是训练系统是否会在裁剪选择附近使用上下文数据。
我的问题可能更好地表述为“TensorFlow 模型是否可能使用 TFRecord 文件中选择的位置附近的上下文细节进行训练?”
解决方法
不,您肯定需要边界框信息来训练对象检测器。他们是否可能使用上下文信息?也许吧,但这是一种习得的行为。
您需要提供物体在多个背景、比例、照明等中可见的图像,以便训练网络以稳健地检测物体。 如果您只有预先裁剪的图像,那么您只能训练一个图像分类器,检测部分将无法从这些图像中学习任何有用的信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。