我有以下的代码,我想要自动只拍摄一张照片时,一张脸被检测到。我已经实现了自动拍照,但它采取了许多没有时间处理的照片,因为它不断地检测到脸。我怎样才能每隔x分钟搜索一张脸,或者每隔x分钟拍一张照片?提前谢谢你。
FaceDetectionListener faceDetectionListener
= new FaceDetectionListener(){
@Override
public void onFaceDetection(Face[] faces, Camera camera) {
if (faces.length == 0){
prompt.setText(" No Face Detected! ");
}else{
//prompt.setText(String.valueOf(faces.length) + " Face Detected :) ");
try{
camera.takePicture(myShutterCallback,myPictureCallback_RAW, myPictureCallback_JPG);
}
catch(Exception e){
}
}
}};发布于 2014-12-11 20:13:43
FaceDetectionListener faceDetectionListener
= new FaceDetectionListener(){
private boolean processing = false;
public void setProcessing(boolean processing) {
this.processing = processing;
}
@Override
public void onFaceDetection(Face[] faces, Camera camera) {
if (processing) return;
if (faces.length == 0){
prompt.setText(" No Face Detected! ");
}else{
//prompt.setText(String.valueOf(faces.length) + " Face Detected :) ");
try{
camera.takePicture(myShutterCallback,myPictureCallback_RAW, myPictureCallback_JPG);
processing = true;
}
catch(Exception e){
}
}
}};然后,您可以在myShutterCallback中执行任何您想要的处理,并调用faceDetectionListener.setProcessing(false)来拍摄另一张照片。这将保证一次只拍一张照片。
https://stackoverflow.com/questions/27431169
复制相似问题