一个指南convert_imageset.cpp一个指南convert_imageset.cpp(A

2019-05-10 14:00发布

我是比较新的机器学习/蟒蛇/ Ubuntu Linux系统。

我有一组以.jpg格式的图像,其中一半包含一个功能,我想朱古力学习和半数没有的。 我在寻找一种方式将它们转换为所需lmdb格式的麻烦。

我有必要的文字输入文件。

我的问题是谁能提供关于如何使用一步步引导convert_imageset.cpp在Ubuntu的终端?

谢谢

Answer 1:

快速指南来自Caffe的convert_imageset

建立

你必须做的第一件事是建立朱古力及朱古力的工具( convert_imageset是这些工具之一)。
安装朱古力后make荷兰国际集团它确保你跑了make tools为好。
验证二进制文件convert_imageset在创建$CAFFE_ROOT/build/tools

准备好你的数据

图片:把所有的图片文件夹中(在这里我要叫它/path/to/jpegs/ )。
标签:创建一个文本文件(例如, /path/to/labels/train.txt每个输入图像的线)。 例如:

img_0000.jpeg 1
img_0001.jpeg 0
img_0002.jpeg 0

在这个例子中所述第一图像被标记为1 ,而其他两个被标记为0

转换数据集

运行壳二进制

~$ GLOG_logtostderr=1 $CAFFE_ROOT/build/tools/convert_imageset \
    --resize_height=200 --resize_width=200 --shuffle  \
    /path/to/jpegs/ \
    /path/to/labels/train.txt \
    /path/to/lmdb/train_lmdb

命令行解释说:

  • GLOG_logtostderr 之前调用标志被设置为1 convert_imageset指示记录机制日志消息重定向到stderr。
  • --resize_height--resize_width调整所有的输入图像相同的大小200x200
  • --shuffle随意改变图片的顺序,并不会保留在顺序/path/to/labels/train.txt文件。
  • 以下是路径的图像文件夹,标签的文本文件和输出名称。 需要注意的是输出名称不应该在调用存在convert_imageset否则你会得到一个可怕的错误消息。

其他标志可能是有用的:

  • --backend -让您的选择lmdb数据集或levelDB
  • --gray -所有图像转换为灰度。
  • --encoded--encoded_type -压缩保持图像数据中的编码(JPG / PNG)形式在数据库中。
  • --help -显示了一些帮助,请参阅下从工具/ convert_imageset.cpp旗所有相关的标志

您可以检查出$CAFFE_ROOT/examples/imagenet/convert_imagenet.sh为例如何使用convert_imageset



文章来源: A guide to convert_imageset.cpp