2014,3,16
 
老师的工作建议如下:
 
1. 与四民沟通下,把openCV这边的源代码和调用接口发给四民同时抄送给我。
2. 根据openCV的实时检测结果,实现对屏幕的调整(下周一前基本实现,下周五完全实现)。 四民这边会辅助你。

近期任务: 2014.3.14

每天的汇总各发给老师和师兄

opencv:把opencv函数接口注释,搞懂它的功能,了解它检测的数据是。。。

测试。。。

底层:安卓阅读器,放大缩小。。。怎么去调用

原函数是这样的

分析一下这个函数

 public Mat onCameraFrame(CvCameraViewFrame inputFrame) {//输入的数据是一幅图

         mRgba = inputFrame.rgba();
         mGray = inputFrame.gray();

           //开始检测面部
         if (mAbsoluteFaceSize == 0) {
             int height = mGray.rows();
             if (Math.round(height * mRelativeFaceSize) > 0) {
                 mAbsoluteFaceSize = Math.round(height * mRelativeFaceSize);
             }
             mNativeDetector.setMinFaceSize(mAbsoluteFaceSize);
         }

         MatOfRect faces = new MatOfRect();

         if (mDetectorType == JAVA_DETECTOR) {
             if (mJavaDetector != null)
                 mJavaDetector.detectMultiScale(mGray, faces, 1.1, 2, 2, // TODO: objdetect.CV_HAAR_SCALE_IMAGE
                         new Size(mAbsoluteFaceSize, mAbsoluteFaceSize), new Size());
         }
         else if (mDetectorType == NATIVE_DETECTOR) {
             if (mNativeDetector != null)
                 mNativeDetector.detect(mGray, faces);
         }
         else {
             Log.e(TAG, "Detection method is not selected!");
         }

         Rect[] facesArray = faces.toArray();//人脸的数据是一个数组
         for (int i = 0; i < facesArray.length; i++)//在人脸的位置画一个框
             Core.rectangle(mRgba, facesArray[i].tl(), facesArray[i].br(), FACE_RECT_COLOR, 3);

         return mRgba;//输出的数据还是一张图
     }

师兄的要求:

//我想要的是人脸识别后的数据
  Rect[] facesArray = faces.toArray();
        for (int i = 0; i < facesArray.length; i++)
            Core.rectangle(mRgba, facesArray[i].tl(), facesArray[i].br(), FACE_RECT_COLOR, 3);
//这里面就有的,可以这样: 

    Rect[] getDataFromCamera(){
    // 这里是你们检测的代码
    Rect[] facesArray = faces.toArray();
    return facesArray;
}
 输入是一张图inputFrame,然后先识别出人脸,然后在人脸的位置画一个框,返回的数据还是一张图,就是多了一个矩形框

Rect[] facesArray = faces.toArray()  这个facesArray应该就是你要的数据了,就是脸的位置

opencv face-detection 代码分析 (1)人脸识别后的数据的更多相关文章

  1. opencv基于PCA降维算法的人脸识别

    opencv基于PCA降维算法的人脸识别(att_faces) 一.数据提取与处理 # 导入所需模块 import matplotlib.pyplot as plt import numpy as n ...

  2. 基于Python3.7和opencv的人脸识别(含数据收集,模型训练)

    前言 第一次写博客,有点紧张和兴奋.废话不多说,直接进入正题.如果你渴望使你的电脑能够进行人脸识别:如果你不想了解什么c++.底层算法:如果你也不想买什么树莓派,安装什么几个G的opencv:如果你和 ...

  3. 【opencv】Java实现opencv 调用本地摄像头,实现人脸识别、人形识别、人眼识别

    本博客为老魏原创,如需转载请留言咨询. 效果预览:(没办法,为了效果只能上像了,丑别介意.哈哈..) 上代码: 1 package com.lw.test; 2 3 import java.awt.G ...

  4. FFMPEG结构体分析:AVFrame(解码后的数据)

    https://blog.csdn.net/jxcr1984/article/details/52766524 本文转自: http://blog.csdn.net/leixiaohua1020/ar ...

  5. opencv 人脸识别

      背景知识 OpenCV 是一个开源的计算机视觉和机器学习库.它包含成千上万优化过的算法,为各种计算机视觉应用提供了一个通用工具包.根据这个项目的关于页面,OpenCV 已被广泛运用在各种项目上,从 ...

  6. 基于 OpenCV 的人脸识别

    基于 OpenCV 的人脸识别 一点背景知识 OpenCV 是一个开源的计算机视觉和机器学习库.它包含成千上万优化过的算法,为各种计算机视觉应用提供了一个通用工具包.根据这个项目的关于页面,OpenC ...

  7. 【计算机视觉】基于OpenCV的人脸识别

    一点背景知识 OpenCV 是一个开源的计算机视觉和机器学习库.它包含成千上万优化过的算法,为各种计算机视觉应用提供了一个通用工具包.根据这个项目的关于页面,OpenCV 已被广泛运用在各种项目上,从 ...

  8. opencv安装实录附十几行C++实现的一个人脸识别demo

    前言: 之前写过一篇在nano上使用opencv,nano上默认是安装了opencv的库,除了nano,我们自己电脑上也想使用opencv做一些平时图像处理验证. 本来也是看一些资料安装好的,觉得也没 ...

  9. OpenCV学习(37) 人脸识别(2)

          在前面一篇教程中,我们学习了OpenCV中基于特征脸的人脸识别的代码实现,我们通过代码 Ptr<FaceRecognizer> model = createEigenFaceR ...

随机推荐

  1. Android清除本地数据缓存代码案例

    Android清除本地数据缓存代码案例 直接上代码: /*  * 文 件 名:  DataCleanManager.java  * 描    述:  主要功能有清除内/外缓存,清除数据库,清除shar ...

  2. python: 命令选项及归类

    usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... Options and arguments (and corresp ...

  3. mysql substring_index

    select * from tablename where substring_index(field1,'_',-1)=‘abc' #表中field1的值结构为123_abc

  4. [转]ubuntu 14.04 系统设置不见了

    [转]ubuntu 14.04 系统设置不见了 http://blog.sina.com.cn/s/blog_6c9d65a10101i0i7.html 不知道删除什么了,系统设置不见了! 我在终端运 ...

  5. eclipse插件开发中全局对象的获取

    转自:http://blog.csdn.net/liaomin416100569/article/details/7165425 1.获取系统默认的ShellShell shell = Platfor ...

  6. Oracle把两个空格以上的空格,替换为两个空格

    substr( ,instr(,)),)) ) 解释如下: 1. 去掉原字串左右的空格的字符(STR),2.查找STR中空格出现二次的位置(LOC),3.从STR中的第一位到LOC-1截取STR||L ...

  7. 认识Linux

    Linux的内核版本 1.如何查看Linux的内核版本 # uname -r -.el6.i686 2. 2.6.32-358的含义    主版本.次版本.释出版本-修改版本 3.主次版本编号规则  ...

  8. 【BZOJ 1997】[Hnoi2010]Planar

    Description Input Output   找到哈密尔顿环之后找到不在哈密尔顿环上的边 这些边如果同时在里面相交那他们同时在外面也相交,所以只能一外一内,这就变成了2-SAT,判一下就好了 ...

  9. why does angular js rock

    angularjs 入门教程 http://angular-tips.com/blog/2013/08/why-does-angular-dot-js-rock/ Practive the previ ...

  10. PSPO表格

    一.项目计划总结: 周活动总结表 日期         任务 听课 编写程序 阅读课本 准备考试 日总计 周日 周一 周二 300 100 30 430 周三 100 50 30 180 周四 200 ...