눈의 움직임을 감지해야하는 Android 응용 프로그램을 준비 중입니다. 어쨌든 이미지에서 위의 것을 얻을 수 있지만 나는 이것을 라이브 눈에 원합니다.Android : 실시간으로 센서를 사용하여 눈의 움직임을 감지하십시오.
눈을 감지하기 위해 근접 센서를 사용할 수 있다면 이해할 수 없습니다. smartStay 기능과 같습니다.
동일한 아이디어를 제안하십시오.
눈의 움직임을 감지해야하는 Android 응용 프로그램을 준비 중입니다. 어쨌든 이미지에서 위의 것을 얻을 수 있지만 나는 이것을 라이브 눈에 원합니다.Android : 실시간으로 센서를 사용하여 눈의 움직임을 감지하십시오.
눈을 감지하기 위해 근접 센서를 사용할 수 있다면 이해할 수 없습니다. smartStay 기능과 같습니다.
동일한 아이디어를 제안하십시오.
우리는 깜짝 눈과 눈을 감지하기 위해 전면 카메라를 사용할 수 있습니다. 눈을 감지하려면 Vision API를 사용하십시오. 안구 추적
코드 :
이public class FaceTracker extends Tracker<Face> {
private static final float PROB_THRESHOLD = 0.7f;
private static final String TAG = FaceTracker.class.getSimpleName();
private boolean leftClosed;
private boolean rightClosed;
@Override
public void onUpdate(Detector.Detections<Face> detections, Face face) {
if (leftClosed && face.getIsLeftEyeOpenProbability() > PROB_THRESHOLD) {
leftClosed = false;
} else if (!leftClosed && face.getIsLeftEyeOpenProbability() < PROB_THRESHOLD){
leftClosed = true;
}
if (rightClosed && face.getIsRightEyeOpenProbability() > PROB_THRESHOLD) {
rightClosed = false;
} else if (!rightClosed && face.getIsRightEyeOpenProbability() < PROB_THRESHOLD) {
rightClosed = true;
}
if (leftClosed && !rightClosed) {
EventBus.getDefault().post(new LeftEyeClosedEvent());
} else if (rightClosed && !leftClosed) {
EventBus.getDefault().post(new RightEyeClosedEvent());
} else if (!leftClosed && !rightClosed) {
EventBus.getDefault().post(new NeutralFaceEvent());
}
}
}
//method to call the FaceTracker
private void createCameraResources() {
Context context = getApplicationContext();
// create and setup the face detector
mFaceDetector = new FaceDetector.Builder(context)
.setProminentFaceOnly(true) // optimize for single, relatively large face
.setTrackingEnabled(true) // enable face tracking
.setClassificationType(/* eyes open and smile */ FaceDetector.ALL_CLASSIFICATIONS)
.setMode(FaceDetector.FAST_MODE) // for one face this is OK
.build();
// now that we've got a detector, create a processor pipeline to receive the detection
// results
mFaceDetector.setProcessor(new LargestFaceFocusingProcessor(mFaceDetector, new FaceTracker()));
// operational...?
if (!mFaceDetector.isOperational()) {
Log.w(TAG, "createCameraResources: detector NOT operational");
} else {
Log.d(TAG, "createCameraResources: detector operational");
}
// Create camera source that will capture video frames
// Use the front camera
mCameraSource = new CameraSource.Builder(this, mFaceDetector)
.setRequestedPreviewSize(640, 480)
.setFacing(CameraSource.CAMERA_FACING_FRONT)
.setRequestedFps(30f)
.build();
}
아니요 눈 감지 또는 추적에 근접 센서를 사용할 수 없습니다. OpenCV에 기회를주십시오.
링크 : OpenCv GitHub의 : OpenCv github
눈 탐지 용으로 전면 카메라를 사용할 수 있습니까? 전면 카메라가 백그라운드에서 실행될 수 있으므로 눈을 감지 할 수 있습니다. – PuneetGupta
예, 가능합니다. –
openCv가 없으면 안드로이드에서 실행 예제가 있습니다 (openCv에 대해 아무것도 모르는 경우). – PuneetGupta
당신이 근접 식을 사용하지거야, 당신은 당신의 캠을 사용합니다 ... 나는이 제안에 대한 –
감사 @OmarElDon 도움이되기를 바랍니다. 따라서 전면 카메라가 배경 화면에 나타나지 않아 눈을 감지합니다. 제 이해가 정확한지 확인하십시오. – PuneetGupta
정확하게는 아닙니다. 근접 센서는 적어도 멀리있는 물체의 경우 동작 탐지기로 작동하지 않습니다 –