zoukankan      html  css  js  c++  java
  • 【计算机视觉】MTCNN基于NCNN的测试过程

    前言

    操作过程

    NCNN:

    https://github.com/Tencent/ncnn/wiki/how-to-build#build-for-linux-x86;

    vector初始化:
    int num[4] = { 1, 4, 3, 2 };
    int numLength = sizeof(num) / sizeof(num[0]);
    vector<int> nums(num, num + numLength);  //使用数组初始化向量
    Q:
    make[2]: *** No rule to make target 'ncnn/src/libncnn.a', needed by 'mtcnn'.  Stop.
    CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/mtcnn.dir/all' failed

    A:
    No rule to make target `XXX'.
    No rule to make target ` XXX ', needed by `yyy'.
    无法为重建目标“XXX”找到合适的规则,包括明确规则和隐含规则。
    修正这个错误的方法是:在Makefile中添加一个重建目标的规则。其它可能导致这些错误的原因是Makefile中文件名拼写错误,或者破坏了源文件树(一个文件不能被重建,可能是由于依赖文件的问题)。
     
    仔细检查之后发现是文件路径不对;需要将libncnn.a文件复制到需要的文件目录;
    cmake之后需要将./MTCNN_cpuimage/ncnn/build/src目录下的libncnn.a文件复制到./MTCNN_cpuimage/build/ncnn/src目录下,才可以正常make编译;
     
     
    Q:
    /home/rjzheng/uisee/code/MTCNN/MTCNN_cpuimage/src/main.cpp: In function ‘void saveImage(const char*, int, int, int, unsigned char*)’:
    /home/rjzheng/uisee/code/MTCNN/MTCNN_cpuimage/src/main.cpp:57:20: error: ‘browse’ was not declared in this scope
         browse(saveFile);

    A:
    static函数的定义位于头文件中,在main文件中调用,这种可以直接调用吗???我将该函数直接添加到main文件中可以编译通过,这可以证明该函数再头文件中不能直接被拿来调用;
     

    struct Bbox {
        float score;
        int x1;
        int y1;
        int x2;
        int y2;
        float area;
        float ppoint[10];
        float regreCoord[4];
    };

     运行

    $./mtcnn ../models/ ../sample.jpg 

    参考

    1. MTCNN人脸检测 附完整C++代码

    2. https://github.com/cpuimage/MTCNN

    3. NCNN_github;

    4. NCNN_Build for Linux x86;

  • 相关阅读:
    轻松完成mysql4.1与mysql4.0数据库转换备份
    MYSQL数据迁徙tips,ORA00907: missing right parenthesis
    viking病毒再次感染公司LAN
    [恢]hdu 2032
    [恢]hdu 2042
    [恢]hdu 2033
    [恢]hdu 2039
    [恢]hdu 2029
    [恢]hdu 2010
    [恢]hdu 2016
  • 原文地址:https://www.cnblogs.com/happyamyhope/p/10906189.html
Copyright © 2011-2022 走看看