如何在caffe中创建用于对象检测的数据集?

时间:2017-03-21 13:44:52

标签: deep-learning caffe object-detection leveldb lmdb

为图像创建数据库(LMDB/LEVELDB)在caffe中是微不足道的。但是我们如何为对象检测创建这样的数据集呢? 这个序列是正确的方法吗?

  1. 将所有图片放入文件夹
  2. 对于每个图像,创建一个与相应图像的名称相同的文本文件*
  3. 将图像中每个对象的边界框坐标放在单独的行中
  4. 现在我如何将这种结构转换为lmdb?
    我应该将所有txt文件转换为字节并将整个字节流保存为每个图像的一个标签吗? caffe是否能够自动从这样的转换数据库中读取数据,还是应该创建一个特定的层来读取和提供所需的信息?

1 个答案:

答案 0 :(得分:2)

您需要创建一个自定义图层来处理需要包含在lmdb文件中的其他数据,您可以查看已经实现的caffe中的Fast-RCNN,它在此页面上执行端到端检测:https://ng-bootstrap.github.io/#/components/modal

通过查看原型文件上的输入图层,您可以看到他们使用自定义类型作为输入:

var myArray = ['cats', 'dogs', 'monster munch'];

for (i = 0; i < myArray.length; i++) {
  console.log([i]);
}

}

此外,您可以在此处查看此自定义图层的详细信息: https://github.com/rbgirshick/py-faster-rcnn/tree/master/models/coco/VGG_CNN_M_1024/faster_rcnn_end2end