基于android的人脸识别

来源:互联网 发布:java移动云商城源码 编辑:程序博客网 时间:2024/06/05 09:24
把照片分成黑白两种颜色。。。然后扣掉白色的部分。。。
然后判断眼睛是否对称、鼻子是否是一个竖线、口是否眼色有变化

openCV
javaCV

cn.faceplusplus.com  清华做的人脸识别的网站 


package com.njupt.facedetector1;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.PointF;import android.media.FaceDetector;import android.media.FaceDetector.Face;import android.os.Bundle;import android.app.Activity;import android.view.Menu;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Bitmap faceBitMap = BitmapFactory.decodeResource(getResources(), R.drawable.bb);    FaceDetector detector = new FaceDetector(faceBitMap.getWidth(), faceBitMap.getHeight(), 1);        Face[] mFaces = new Face[1] ;        int mNumFaces = detector.findFaces(faceBitMap, mFaces);        if(mNumFaces > 0){    for(int i = 0 ; i < mNumFaces ; ++i){    System.out.println("找到脸了");    PointF point = new PointF();    mFaces[i].getMidPoint(point);    System.out.println("脸的中心位置的坐标是: "+point.x +" , "+point.y);    }    }else{    System.out.println("没有找到脸");    }    }@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}