zoukankan      html  css  js  c++  java
  • 使用caffe测试自己的图片

         第一种方法是测试批量图片,使用caffe.bin即可,首先要做的是把你的jpg图片转换为LMDB的格式,如何转换呢?用/build/tools/convert_image --resize_width 227 --resize_height 227 图片所在的目录 class.txt LMDB文件生成的目录(注意是目录)即可,这里class.txt是我自己生成的,内容是每个图片的路径。

      得到相应的LMDB目录以后,把这个路径填入到prototxt的test layer中的source中,修改一下batch_size的大小,然后执行命令./build/tools/caffe.bin test -model 你的网络prototxt -weights 你的caffemodel -iterations 100 (迭代一百次);

     

      第二种方法是使用classfication,这个是针对一幅图做分类的。这个网上百分之99的都是直接用bvlc这个model来测试的,那里面什么东西都给好了,实在是没有任何的借鉴的意义,最近我在复现一篇论文的工作,它里面调用的是googlenet,用classification的话就需要自己修改一下东西。

      首先是deploy.prototxt文件,我的prototext是训练和测试的,所以你要用来预测图片,需要自己做修改,最简单的方法是吧input的layer都删除了,换成:

    layer {
    name: "data"
    type: "Input"
    top: "data"
    input_param
    { shape: { dim:1 dim: 3 dim: 227 dim: 227 }}}

         第一个维度是图片数,第二个是通道数,后面的是图片的长宽,然后对于googlenet,他的输出是三个...所以我就强行把前两个输出删除了,这里因为还没有读过相   关的paper,不太清楚为什么要三个输出,这几天有时间准备把paper读一下,搞定这个以后,要确定你的caffe编译了opencv,这样它就不会报错说没有input了。

  • 相关阅读:
    Exception in thread "main" java.io.IOException: Cannot run program "XX": CreateProcess error
    用eclipse打包mapreduce程序 运行出现解析路径错误的诡异问题
    HTMLParser学习笔记(一)
    Prim算法实现
    hadoop mapreduce 出现找不到 各种类的错误
    搜索引擎的基本原理
    ArrayList 和数组 在mapreduce编程中序列化
    读《做你自己》
    对于通过视频学习编程的建议
    长篇文档排版技巧
  • 原文地址:https://www.cnblogs.com/daihengchen/p/5761304.html
Copyright © 2011-2022 走看看