【计算机视觉】seetaFace
class impl
class FaceDetection::Impl {
public:
Impl()
: detector_(new seeta::fd::FuStDetector()),
slide_wnd_step_x_(), slide_wnd_step_y_(),
min_face_size_(), max_face_size_(-),
cls_thresh_(3.85f) {}
~Impl() {}
inline bool IsLegalImage(const seeta::ImageData & image) {
return (image.num_channels == && image.width > && image.height > &&
image.data != nullptr);
}
public:
static const int32_t kWndSize = ;
int32_t min_face_size_;
int32_t max_face_size_;
int32_t slide_wnd_step_x_;
int32_t slide_wnd_step_y_;
float cls_thresh_;
std::vector<seeta::FaceInfo> pos_wnds_;
std::unique_ptr<seeta::fd::Detector> detector_;
seeta::fd::ImagePyramid img_pyramid_;
};
score
impl_->pos_wnds_ = impl_->detector_->Detect(&(impl_->img_pyramid_));
fust.cpp
std::vector<seeta::FaceInfo> FuStDetector::Detect(
seeta::fd::ImagePyramid* img_pyramid) {
score
for (int32_t i = ; i < hierarchy_size_[]; i++) {
if (model_[i]->Classify(&score)) {
wnd_info.score = static_cast<double>(score);
proposals[i].push_back(wnd_info);
}
}
2
if (model_[model_idx]->Classify(&score, mlp_predicts.data())) {
float x = static_cast<float>(bboxes[m].bbox.x);
float y = static_cast<float>(bboxes[m].bbox.y);
float w = static_cast<float>(bboxes[m].bbox.width);
float h = static_cast<float>(bboxes[m].bbox.height);
bboxes[bbox_idx].bbox.width =
static_cast<int32_t>((mlp_predicts[] * - ) * w + w + 0.5);
bboxes[bbox_idx].bbox.height = bboxes[bbox_idx].bbox.width;
bboxes[bbox_idx].bbox.x =
static_cast<int32_t>((mlp_predicts[] * - ) * w + x +
(w - bboxes[bbox_idx].bbox.width) * 0.5 + 0.5);
bboxes[bbox_idx].bbox.y =
static_cast<int32_t>((mlp_predicts[] * - ) * h + y +
(h - bboxes[bbox_idx].bbox.height) * 0.5 + 0.5);
bboxes[bbox_idx].score = score;
bbox_idx++;
}
【计算机视觉】seetaFace的更多相关文章
- 【计算机视觉】SeetaFace Engine开源C++人脸识别引擎
SeetaFace Engine是一个开源的C++人脸识别引擎,它可以在不依赖第三方的条件下载CPU上运行.他包含三个关键部分,即:SeetaFace Detection,SeetaFace Alig ...
- Atitit 图像处理和计算机视觉的分类 三部分 图像处理 图像分析 计算机视觉
Atitit 图像处理和计算机视觉的分类 三部分 图像处理 图像分析 计算机视觉 1.1. 按照当前流行的分类方法,可以分为以下三部分:三部分 图像处理 图像分析 计算机视觉1 1.2. 图像处理需要 ...
- Jetson ARM SeetaFace编译
SeetaFace简介 SeetaFace依赖于OpenCV,对于Tegra on Ubuntu,Nvidia提供libopencv4tegra并且可以使用Cuda加速. 准备工作 1.阅读OpenC ...
- 人脸识别引擎SeetaFace编译 ubuntu
00.SeetaFace简介 SeetaFace Engine is an open source C++ face recognition engine, which can run on CPU ...
- 计算机视觉中的词袋模型(Bow,Bag-of-words)
计算机视觉中的词袋模型(Bow,Bag-of-words) Bag-of-words 读 'xw20084898的专栏'的blogBag-of-words model in computer visi ...
- paper 118:计算机视觉、模式识别、机器学习常用牛人主页链接
牛人主页(主页有很多论文代码) Serge Belongie at UC San Diego Antonio Torralba at MIT Alexei Ffros at CMU Ce Liu at ...
- x01.Lab.OpenCV: 计算机视觉
横看成岭侧成峰,计算视觉大不同.观看的角度不同,成像自然不同,这对计算机视觉来说,是个大麻烦.但计算机视觉应用如此广泛,却又有不得不研究的理由.指纹机大家都用过吧,这不过是冰山之一角.产品检测,机器人 ...
- 介绍n款计算机视觉库/人脸识别开源库/软件
计算机视觉库 OpenCV OpenCV是Intel®开源计算机视觉库.它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV 拥有包括 300 多个 ...
- 计算机视觉(Computer Version,CV)、模式识别、人工智能
一.计算机视觉 Divid Marr将计算机视觉系统的开发问题归纳为3个要素: (1)数学理论 考虑数学计算层面的目标及可以引入的合理约束条件. (2)描述和算法 重点解决计算机视觉中的输入输出的数据 ...
随机推荐
- 【转】ASP.NET MVC中错误日志信息记录
MVC中有一个处理异常的过滤器 HandleErrorAttribute 1.新建一个类继承自 HandleErrorAttribute,然后重写OnException这个方法 public clas ...
- 使用Swagger2构建强大的RESTful API文档(1)(二十二)
由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这 ...
- 微信授权(Net Mvc)
项目结构 WeiXinController.cs using System; using System.Collections.Generic; using System.Linq; using Sy ...
- 数据泵导入 ORA-31626
Oracle,10G,数据泵导入时,报错如下: 解决方案:对当前用户做如下授权 . 具体操作:grant connect,resource to user;
- c#7的新特性
1.out关键字 //可以直接声明使用 ",out int number); 2.元组 //有点类似匿名对象的样子 //用小括号包含变量,可以当做返回值,可以当做变量赋值等 //1.当做函数 ...
- angular4-常用指令
ngIf 指令(它与 AngularJS 1.x 中的 ng-if 指令的功能是等价) <div *ngIf="condition">...</div> n ...
- urllib 获取页面或发送信息
#! /usr/bin/env python3 # -*- coding:utf-8 -*- #urllib提供了一系列用于操作URL的功能. #urllib的request模块可以非常方便地抓取UR ...
- 某些material英文翻译
chrome 铬,铬合金, 镀铬 matte 无光泽的,不光滑的 Decal 陶瓷的 duo color 双色 livery (这个没找到什么吊意思,我看像是一个类似打logo的材质)
- c算法:字符串查找-KMP算法
/* *用KMP算法实现字符串匹配搜索方法 *该程序实现的功能是搜索本目录下的所有文件的内容是否与给定的 *字符串匹配,如果匹配,则输出文件名:包含该字符串的行 *待搜索的目标串搜索指针移动位数 = ...
- 6.4 C++提取子字符串及字符串的比较
参考:http://www.weixueyuan.net/view/6393.html 总结: 函数substr可以提取string字符串中的子字符串,该函数有两个参数,第一个参数为需要提取的子字符串 ...