把照片分成黑白两种颜色。。。然后扣掉白色的部分。。。
然后判断眼睛是否对称、鼻子是否是一个竖线、口是否眼色有变化
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 { @Override protected 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("没有找到脸"); } } @Override public 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; }}