Flandmark

面部地标探测器
授权协议 GPLv3
开发语言 C/C++
所属分类 神经网络/人工智能、 计算机视觉库/人脸识别
软件类型 开源软件
地区 不详
投 递 者 张嘉熙
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Flandmark 是一个开源实现面部地标探测器。提供 MATLAB 接口。

C++ 示例代码:

#include "flandmark_detector.h"

int main(int argc, char * argv[])
{
  // load flandmark model structure and initialize
  FLANDMARK_Model * model = flandmark_init("flandmark_model.dat");

  // load input image
  IplImage *img = cvLoadImage("photo.jpg");

  // convert image to grayscale
  IplImage *img_grayscale = cvCreateImage(cvSize(img->width, img->height), IPL_DEPTH_8U, 1);
  cvCvtColor(img, img_grayscale, CV_BGR2GRAY);

  // bbox with detected face (format: top_left_col top_left_row bottom_right_col bottom_right_row)
  int bbox[] = {72, 72, 183, 183};

  // detect facial landmarks (output are x, y coordinates of detected landmarks)
  float * landmarks = (float*)malloc(2*model->data.options.M*sizeof(float));
  flandmark_detect(img_grayscale, bbox, model, landmarks);
}
  • 之前用dlib库检测人脸的68个特征点,虽然特征点比较准确,但如果被检测图片比较大,效率就比较低。而且脸部模型数据文件shape_predictor_68_face_landmarks.dat有95MB太大了。 后来发现flandmark这样一个轻量级的人脸检测库,大概只有5MB左右。检测的特征点少一些,只有8个。不过如果作一般用途,这8个点足够了。下面简单贴出相关代码。 主要参考来自于:http

  • eye_closure_detection.h #ifndef _EYE_CLOSURE_DETECTION_H #define _EYE_CLOSURE_DETECTION_H #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <vector> #include <iostream>

 相关资料
  • 有没有一种方法可以让fluentd船LivenessProbes输出像它对普通容器在吊舱中的输出一样?

  • 我试图在Azure中新部署的aks Kuberbetes(1.9.6)集群中部署zalenium helm chart。但我不让它起作用。豆荚给出了下面的日志: 描述pod给出:警告不健康4M(x12超过6M)kubelet,aks-agentpool-93668098-0就绪探测失败:HTTP探测失败,状态代码:502 Zalenium图像版本:Dosel/Zalenium:3 如果使用Kube

  • 第一部分介绍的是PhalApi的基础内容,以及高级主题,最后还会讲述除了编码部分,其他的主题。这一部分,我们将探索如何使用PhalApi进行项目开发,从对PhalApi的感性认识,再到细致的基础开发,最后深入到核心的思想和理念。

  • SystemTap诞生的最初使命,是探测内核空间。由于许多情况下用户空间探测有助于诊断问题,SystemTap从0.6版本开始也支持探测用户空间的进程。SystemTap可以探测用户空间进程内函数的调用和退出,可以探测用户代码中预定义的标记,可以探测用户进程的事件。 SystemTap进行用户空间探测需要uprobes模块。如果你的Linux内核版本大于等于3.5, 它已经内置了uprobes。要

  • 物理内存探测 物理内存的相关概念 我们知道,物理地址访问的通常是一片 DRAM,我们可以把它看成一个以字节为单位的大数组,通过物理地址找到对应的位置进行读写。但是,物理地址并不仅仅只能访问 DRAM,也可以用来访问其他的外设,因此你也可以认为 DRAM 也算是一种外设,物理地址则是一个对可以存储的介质的一种抽象。 而如果访问其他外设要使用不同的指令(如 x86 单独提供了 in 和 out 等指令

  • 我在k8s https://github.com/paveldemyanenko/kubernetes-keycloak/tree/master/kubernetes中准备了一些Keycloak的基本示例,在这里我遇到了一个问题,当我在部署结束时部署Keycloak Helm Chart时,我会出现这样一个错误: 配置有什么问题,为什么它不能检查就绪探测?