热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux硬件加速开源人脸识别引擎SeetaFace:第一步配置开源代码

安装OpenCV这个一开始配置,消耗时间,主要就交叉编译的问题,网上查一下,最后test一下成功就OKcopy开源Seeta

  1. 安装OpenCV 这个一开始配置,消耗时间,主要就交叉编译的问题,网上查一下,最后test一下成功就OK

  2. copy开源Seetaface
    这里写图片描述

  3. 第一步进入FaceDetection
    PS:因为build下是别人生成的额,我生成的都放在build2下,一样的
    !!!!!!操作步骤必须和Readme一样!!!!!
    我们在Linux上操作所以只要做这部分:


How to Build in Linux


  1. Build

mkdir build
cd build
cmake ..
make -j${nproc}2. Run demo
-shell
./build/facedet_test image_file model/seeta_fd_frontal_v1.0.bin

这一步为生成seeta_fd_frontal_v1.0.bin,后面需要使用!
我运行test的结果:
这里写图片描述


  1. 第二步进入FaceAlignment
    同样根据Readme

### Build in Linuxmkdir build//copy the "face detection lib" and "face_detection.h" to the //directory "build" for building the test example.cd build
cmake ..
makeIf everything goes fine, move on to test the program. Note: you should copy the face detetion model [seeta_fd_frontal_v1.0.bin](../FaceDetection/model/seeta_fd_frontal_v1.0.bin) to the directory "build" before testing.cd ..
./build/fa_testThe alignment results are stored in "result.jpg".

运行test后build下为:
这里写图片描述
6. 第三步进入Indentification
同样根据Readme


Linux & Mac OS

//Change current working directory to `SeetaFace/FaceIdentification` //and run the following command:mkdir build
cd build
cmake .. && make//If everything goes fine, move on to test the program:
./build/src/test/test_face_recognizer.bin

要把之前需要用到的lib和bin拷贝过来,因为识别需要之前的人脸标注和特征点

这里写图片描述
运行test完成表明配置完成了!

自己根据项目改的结果
一些数据也被注释掉了。反正要出好多数据
这里写图片描述

程序运行终于的问题总结:

1、mkdir build 将src/test 下的facedetection cpp 加入头文件include 在build 下make2、./build2/facedet_test image_file ./model/seeta_fd_frontal_v1.0.bin3、提示:copy the "face detection lib":libseeta_facedet_lib.a and "face_detection.h" to the directory "build" for building the test example.4、在Alignment里build2下运行./fa_test 5、Identification问题:/usr/bin/ld: cannot find -lseeta_facedet_lib/usr/bin/ld: cannot find -lseeta_fa_lib6、要在make之后的FaceIdentification的build2中加入图像 pic1 pic2 pic1_g pic2_g
还要加入seeta_fa_v1.1bin & seeta_fd_frontal_v1.0.bin 这两个其他文件的moudle7、首先在build2下 进行 ./src/test/test_face_verification.bin 成功8、在到Identification下的src 的test中对test_face_recognizer.cpp修改需要添加如下缺少的代码后重新再build2下make#include
#include #include "face_identification.h"
#include "common.h"#include "math.h"
#include "time.h"
#include
#include
#include <string>
#include #include
#include #include "ctime"#include "common_net.h"
#include "bias_adder_net.h"
#include "bn_net.h"
#include "conv_net.h"
#include "eltwise_net.h"
#include "inner_product_net.h"
#include "max_pooling_net.h"
#include "spatial_transform_net.h"
#include "pad_net.h"using namespace seeta;
REGISTER_NET_CLASS(Common);
REGISTER_NET_CLASS(BiasAdder);
REGISTER_NET_CLASS(Bn);
REGISTER_NET_CLASS(Conv);
REGISTER_NET_CLASS(Eltwise);
REGISTER_NET_CLASS(InnerProduct);
REGISTER_NET_CLASS(MaxPooling);
REGISTER_NET_CLASS(SpatialTransform);
REGISTER_NET_CLASS(Pad);1、按照READme操作&#xff0c;Detection-----Alignment------Identification新建build文件夹&#xff0c;在下面生成文件

推荐阅读
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • 【线段树】  本质是二叉树,每个节点表示一个区间[L,R],设m(R-L+1)2(该处结果向下取整)左孩子区间为[L,m],右孩子区间为[m ... [详细]
  • 万事开头难,凡事都有套路,勇敢迈出第一步就成功一大半了。本节将带领初学者们迈出属于自己的一小步。本书的开发工具采用AndroidStudio࿰ ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 通过将常用的外部命令集成到VSCode中,可以提高开发效率。本文介绍如何在VSCode中配置和使用自定义的外部命令,从而简化命令执行过程。 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • 零拷贝技术是提高I/O性能的重要手段,常用于Java NIO、Netty、Kafka等框架中。本文将详细解析零拷贝技术的原理及其应用。 ... [详细]
  • 本文介绍如何使用线段树解决洛谷 P1531 我讨厌它问题,重点在于单点更新和区间查询最大值。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 基于Linux开源VOIP系统LinPhone[四]
    ****************************************************************************************** ... [详细]
  • PHP预处理常量详解:如何定义与使用常量 ... [详细]
  • 在当前的软件开发领域,Lua 作为一种轻量级脚本语言,在 .NET 生态系统中的应用逐渐受到关注。本文探讨了 Lua 在 .NET 环境下的集成方法及其面临的挑战,包括性能优化、互操作性和生态支持等方面。尽管存在一定的技术障碍,但通过不断的学习和实践,开发者能够克服这些困难,拓展 Lua 在 .NET 中的应用场景。 ... [详细]
author-avatar
海and云
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有