Don't assume a camera

This commit is contained in:
Peter Braden 2014-10-15 20:59:46 +02:00
parent 1659f7ef1a
commit a62456f47b
2 changed files with 46 additions and 39 deletions

View File

@ -1,16 +1,20 @@
var cv = require('../lib/opencv'); var cv = require('../lib/opencv');
var camera = new cv.VideoCapture(0); try {
var window = new cv.NamedWindow('Video', 0) var camera = new cv.VideoCapture(0);
/* var window = new cv.NamedWindow('Video', 0)
setInterval(function() { /*
camera.read(function(err, im) { setInterval(function() {
if (err) throw err; camera.read(function(err, im) {
console.log(im.size()) if (err) throw err;
if (im.size()[0] > 0 && im.size()[1] > 0){ console.log(im.size())
window.show(im); if (im.size()[0] > 0 && im.size()[1] > 0){
} window.show(im);
window.blockingWaitKey(0, 50); }
}); window.blockingWaitKey(0, 50);
}, 20); });
*/ }, 20);
*/
} catch (e){
console.log("Couldn't start camera:", e)
}

View File

@ -1,29 +1,32 @@
var cv = require('../lib/opencv'); var cv = require('../lib/opencv');
var vid = new cv.VideoCapture(0); try {
var vid = new cv.VideoCapture(0);
vid.read(function(err, im){ vid.read(function(err, im){
if (err) throw err; if (err) throw err;
if (im.size()[0] > 0 && im.size()[1] > 0){
if (im.size()[0] > 0 && im.size()[1] > 0){ im.detectObject(cv.FACE_CASCADE, {}, function(err, faces){
if (err) throw err;
if (!faces.length) return console.log("No Faces");
im.detectObject(cv.FACE_CASCADE, {}, function(err, faces){ var face = faces[0];
if (err) throw err; var ims = im.size();
if (!faces.length) return console.log("No Faces"); var im2 = im.roi(face.x, face.y, face.width, face.height)
/*
var face = faces[0]; im.adjustROI(
var ims = im.size(); -face.y
var im2 = im.roi(face.x, face.y, face.width, face.height) , (face.y + face.height) - ims[0]
/* , -face.x
im.adjustROI( , (face.x + face.width) - ims[1])
-face.y */
, (face.y + face.height) - ims[0] im2.save('./examples/tmp/take-face-pics.jpg')
, -face.x console.log('Image saved to ./tmp/take-face-pics.jpg');
, (face.x + face.width) - ims[1]) })
*/ } else {
im2.save('./examples/tmp/take-face-pics.jpg') console.log("Camera didn't return image")
console.log('Image saved to ./tmp/take-face-pics.jpg'); }
}) });
} else { } catch (e){
console.log("Camera didn't return image") console.log("Couldn't start camera", e)
} }
});