मैं सामने वाले कैमरे के फ्रेम में चेहरों की संख्या का पता लगाना चाहता हूं। एक बार जब मैं इस छवि का उपयोग कर छवि प्राप्त करता हूं तो मैं चेहरे का पता लगा सकता हूं: http://www.developer.com/ws/android/programming/face-detection-with-android-apis.html। लेकिन मुझे नहीं पता कि उपयोगकर्ता बातचीत के बिना हर 30 सेकंड में फ्रंट कैमरा का उपयोग करके एक छवि कैप्चर कैसे करें। क्या कोई मेरी मदद कर सकता है?उपयोगकर्ता इंटरैक्शन के बिना एंड्रॉइड में फेस डिटेक्शन
उत्तर
निम्नलिखित कोड प्रत्येक 5 सेकंड के बाद आपके कैमरे से फोटो कैप्चर करेगा।
if (TIMER_STARTED) {
multishotTimer.cancel();
multishotTimer.purge();
TIMER_STARTED = false;
} else {
multishotTimer = new Timer();
multishotTimer.schedule(new TimerTask() {
@Override
public void run() {
TIMER_STARTED = true;
Camera camera = surfaceView.getCamera();
camera.takePicture(null, null,
new HandlePictureStorage());
}
}, 1000, 5000L);
}
यहाँ, TIMER_STARTED बूलियन जो संकेत टाइमर या नहीं चल रहा है या नहीं।
बाद के लिए कोड है HandlePictureStorage
private class HandlePictureStorage implements PictureCallback {
@Override
public void onPictureTaken(byte[] picture, final Camera camera) {
//do something when picture is captured...
}
}
आप हर 30 सेकंड में AlarmManager
का उपयोग कर, एक RTC_WAKEUP
Alarm
का समय निर्धारण किया जाना चाहिए, एक Service
लांच करने के लिए Alarm
करने के लिए एक PendingIntent
सेट और Service
अंदर आप छवि पर कब्जा करने के Camera
का उपयोग करना चाहिए।
आपको शायद इस पोस्ट को देखना चाहिए: Open/Run camera from a background Service।
इस प्रकार आप इस पर मैन्युअल रूप से एक SurfaceView और पूर्वावलोकन कैमरा बना सकते हैं:
//First get a reference to the SurfaceView displaying the camera preview
cameraSurface = (SurfaceView) findViewById(R.id.cameraSurface);
cameraSurfaceHolder = cameraSurface.getHolder();
cameraSurfaceHolder.addCallback(cameraSurfaceHolderCallbacks);
.
.
.
private SurfaceHolder.Callback cameraSurfaceHolderCallbacks = new SurfaceHolder.Callback() {
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
if(mCamera == null)return;
mCamera.stopPreview();
mCamera.release();
mCamera = null;
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
try {
mCamera = Camera.open();
mCamera.setPreviewDisplay(holder);
} catch (Exception exception) {
if(mCamera == null)return;
mCamera.release();
mCamera = null;
}
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
Parameters cameraParameters = mCamera.getParameters();
cameraParameters.setPreviewSize(320, 240);
cameraParameters.setPictureSize(320, 240);
int avrgExposure = (cameraParameters.getMinExposureCompensation() + cameraParameters.getMaxExposureCompensation())/2;
cameraParameters.setExposureCompensation(avrgExposure);
mCamera.setParameters(cameraParameters);
mCamera.startPreview();
mCamera.takePicture(null, null, mPictureCallback);
}
};
में उचित कैमरा अनुमति जोड़ने के लिए मत भूलना अपने मैनिफेस्ट:
<uses-permission android:name="android.permission.CAMERA"/>
और अंत में आप एक Android 4.0 उपकरण या इसके बाद के संस्करण का उपयोग कर रहे है अगर आप विधि का उपयोग कर सकते हैं:
mCamera.startFaceDetection();
.
.
.
private FaceDetectionListener faceDetectionListener = new FaceDetectionListener() {
@Override
public void onFaceDetection(Face[] faces, Camera camera) {
//Faces have been detected...
}
};
.
.
.
mCamera.setFaceDetectionListener(faceDetectionListener);
आप इस post जो कि विशिष्ट कार्यक्षमता से संबंधित सब कुछ बताते हैं और यहां तक कि प्रदान करता है एक कार्यात्मक Android स्रोत कोड पर जा सकते हैं कि आप इसे स्वयं करने के लिए डाउनलोड कर सकते हैं।
सम्मान!
- 1. एंड्रॉइड में फेस डिटेक्शन?
- 2. एंड्रॉइड - फेस फीचर डिटेक्शन
- 3. आईओएस फेस डिटेक्शन इश्यू
- 4. फेस टाइप डिटेक्शन
- 5. उपयोगकर्ता इंटरैक्शन
- 6. उपयोगकर्ता इंटरैक्शन के बिना वीडियो चैट शुरू करें - एंड्रॉइड
- 7. उपयोगकर्ता इंटरैक्शन
- 8. गैर फ्रंट छवियों के लिए ओपनसीवी के साथ फेस डिटेक्शन
- 9. स्वचालित साउंडक्लाउड PHP एपीआई प्रमाणीकरण उपयोगकर्ता इंटरैक्शन के बिना
- 10. उपयोगकर्ता इंटरैक्शन के बिना स्वचालित रूप से एक फोटो लें
- 11. उपयोगकर्ता इंटरैक्शन केवल
- 12. उपयोगकर्ता इंटरैक्शन कभी-कभी UIWebView
- 13. ऑब्जेक्ट डिटेक्शन एंड्रॉइड ओपनसीवी
- 14. एंड्रॉइड जावास्क्रिप्ट रेगेक्स डिटेक्शन
- 15. एंड्रॉइड ओपनसीवी ऑब्जेक्ट डिटेक्शन
- 16. एंड्रॉइड: उपयोगकर्ता इंटरफ़ेस के बिना फोटो लें
- 17. एंड्रॉइड - सेवा और गतिविधि इंटरैक्शन
- 18. Android में डायनामिक उपयोगकर्ता फेस मॉडल कैसे बनाएं?
- 19. जावा एंड्रॉइड के लिए फेस पहचान एपीआई
- 20. उपयोगकर्ता इंटरफ़ेस के बिना एंड्रॉइड एप्लिकेशन में चित्र कैसे लें ..?
- 21. उपयोगकर्ता इंटरैक्शन परीक्षण के लिए फेसबुक डमी खाते
- 22. फेस डिटेक्शन कैमरा 2 एपीआई के साथ काम करने के लिए सामग्री किसके पास है?
- 23. उपयोगकर्ता इंटरैक्शन (नया एपीआई) के बिना instagram access_token कैसे प्राप्त करें?
- 24. बिना किसी उपयोगकर्ता-इंटरैक्शन के पाइथन से BigQuery प्रोग्रामेटिक रूप से क्वेरी कैसे करें?
- 25. कस्टम व्यू में उपयोगकर्ता इंटरैक्शन को अक्षम कैसे करें
- 26. मैक (फेस कैमरा में) पर फेस ट्रैकिंग सॉफ्टवेयर
- 27. अंतर्निहित विचारों के साथ उपयोगकर्ता इंटरैक्शन को अवरुद्ध करना
- 28. आईओएस मोशन डिटेक्शन: मोशन डिटेक्शन सेंसिटीविटी लेवल
- 29. एंड्रॉइड में प्रोग्रेसबार दिखाई देने पर उपयोगकर्ता इंटरैक्शन को कैसे अक्षम करें?
- 30. वॉयसओवर इंटरैक्शन
क्या आप इस तरह हैंडलर का उपयोग नहीं कर सके: this.refreshTimer = 30 * 1000; this.handlerFaceCapture = नया हैंडलर(); this.faceCapture = नया FaceCaptureScheduler(); this.handlerFaceCapture .postDelayed (this.handlerFaceCapture, this.refreshTimer); यह शेड्यूलर निष्पादित करेगा जो प्रत्येक 30 सेकंड अंतराल पर रननेबल लागू करना चाहिए। – Gilson