资源简介
这是一个C++语言开发的人脸识别系统,文件包括说明文档,测试数据,源码等实例。
代码片段和文件信息
// This file is part of Eigen a lightweight C++ template library
// for linear algebra.
//
// Copyright (C) 2015 Benoit Jacob
//
// This Source Code Form is subject to the terms of the Mozilla
// Public License v. 2.0. If a copy of the MPL was not distributed
// with this file You can obtain one at http://mozilla.org/MPL/2.0/.
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
const int default_precision = 4;
// see --only-cubic-sizes
bool only_cubic_sizes = false;
// see --dump-tables
bool dump_tables = false;
uint8_t log2_pot(size_t x) {
size_t l = 0;
while (x >>= 1) l++;
return l;
}
uint16_t compact_size_triple(size_t k size_t m size_t n)
{
return (log2_pot(k) << 8) | (log2_pot(m) << 4) | log2_pot(n);
}
// just a helper to store a triple of KMN sizes for matrix product
struct size_triple_t
{
uint16_t k m n;
size_triple_t() : k(0) m(0) n(0) {}
size_triple_t(size_t _k size_t _m size_t _n) : k(_k) m(_m) n(_n) {}
size_triple_t(const size_triple_t& o) : k(o.k) m(o.m) n(o.n) {}
size_triple_t(uint16_t compact)
{
k = 1 << ((compact & 0xf00) >> 8);
m = 1 << ((compact & 0x0f0) >> 4);
n = 1 << ((compact & 0x00f) >> 0);
}
bool is_cubic() const { return k == m && m == n; }
};
ostream& operator<<(ostream& s const size_triple_t& t)
{
return s << “(“ << t.k << “ “ << t.m << “ “ << t.n << “)“;
}
struct inputfile_entry_t
{
uint16_t product_size;
uint16_t pot_block_size;
size_triple_t nonpot_block_size;
float gflops;
};
struct inputfile_t
{
enum class type_t {
unknown
all_pot_sizes
default_sizes
};
string filename;
vector entries;
type_t type;
inputfile_t(const string& fname)
: filename(fname)
type(type_t::unknown)
{
ifstream stream(filename);
if (!stream.is_open()) {
cerr << “couldn‘t open input file: “ << filename << endl;
exit(1);
}
string line;
while (getline(stream line)) {
if (line.empty()) continue;
if (line.find(“BEGIN MEASUREMENTS ALL POT SIZES“) == 0) {
if (type != type_t::unknown) {
cerr << “Input file “ << filename << “ contains redundant BEGIN MEASUREMENTS lines“;
exit(1);
}
type = type_t::all_pot_sizes;
continue;
}
if (line.find(“BEGIN MEASUREMENTS DEFAULT SIZES“) == 0) {
if (type != type_t::unknown) {
cerr << “Input file “ << filename << “ contains redundant BEGIN MEASUREMENTS lines“;
exit(1);
}
type = type_t::default_sizes;
continue;
}
if (type == type_t::unknown) {
continue;
}
switch(type) {
case type_t::all_pot_sizes: {
unsigned int product_size block_size;
float gf
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-10-28 10:23 face_c\
目录 0 2018-10-27 01:55 face_c\3rdparty\
目录 0 2018-10-27 01:55 face_c\3rdparty\alphanum\
文件 13847 2018-10-27 01:55 face_c\3rdparty\alphanum\alphanum.hpp
目录 0 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\
文件 180 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\.hgeol
文件 243 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\.hgignore
文件 1703 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\.hgtags
文件 117 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\.hg_archival.txt
目录 0 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\
文件 28983 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\analyze-blocking-sizes.cpp
文件 1421 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\basicbench.cxxlist
文件 1107 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\basicbenchmark.cpp
文件 1669 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\basicbenchmark.h
文件 6313 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchBlasGemm.cpp
文件 3534 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchCholesky.cpp
文件 5788 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchEigenSolver.cpp
文件 2806 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchFFT.cpp
文件 3598 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchGeometry.cpp
文件 22259 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchmark-blocking-sizes.cpp
文件 790 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchmark.cpp
文件 835 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchmarkSlice.cpp
文件 640 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchmarkX.cpp
文件 605 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchmarkXcwise.cpp
文件 1209 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchmark_suite
文件 3932 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\BenchSparseUtil.h
文件 4392 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\BenchTimer.h
文件 2529 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\BenchUtil.h
文件 5193 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\benchVecAdd.cpp
文件 10821 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\bench_gemm.cpp
文件 618 2018-10-27 01:55 face_c\3rdparty\eigen-eigen-5a0156e40feb\bench\bench_multi_compilers.sh
............此处省略3251个文件信息
- 上一篇:传智播客 c/c++ 课件
- 下一篇:protobuf 2.5.0
相关资源
- 深度学习图像标注工具安装版
- Othello黑白棋游戏与AI
- 人工智能的贪食蛇
- OpenCV人脸识别实例源码142702
- Alpha-Beta剪枝算法一字棋源码及实验报
- 基于深度学习的人脸识别系统
- 基于深度学习的人脸识别签到系统
- 基于深度学习识别人脸性别和年龄
- HED 深度学习边缘提取 C++接口测试程序
- yolov3+opencv3.4.2 C++源码
- seetaface开源人脸识别
- VC2008 MFC 五子棋 源码 人机对弈 游戏
- 人工智能 A*算法 八数码问题 C++ 报告
- 邮票问题C语言源码
- 人工智能——水壶问题
- 人工智能之动物识别C语言
- 深度学习DBN代码
- 人脸识别MFC程序
- 人工智能,五子棋,人工智能,代码
- 人工智能 八数码问题 A*算法 C语言
- 八数码游戏程序人工智能,c++
- 从广度优先搜索深度优先搜索A*算法多
- xgboost导读和实战_王超&陈帅华
- 人脸检测、人脸对齐MTCNN方法
- 人工智能专家系统C语言版
- 基于ViolaJones算法的人脸识别CPP文件
- 人工智能实验报告以及C语言源程序
- 八数码的深度优先算法c++实现
- 人工智能旅行商问题实验报告及C++源
- 数据挖掘中的Apriori算法(C语言版)
评论
共有 条评论