Skip to content

Instantly share code, notes, and snippets.

@bjartwolf
Last active December 12, 2015 00:48
Show Gist options
  • Save bjartwolf/4686500 to your computer and use it in GitHub Desktop.
Save bjartwolf/4686500 to your computer and use it in GitHub Desktop.
Rx facedetection filtering
var net = require('net');
var rx = require('rx');
require('./extendObservable.js'); // Adds the toObservable method to EventEmitter
var RGBAStream = require('./RGBAStream');
var PaVEParser = require('./node_modules/ar-drone/lib/video/PaVEParser');
var FaceStream = require('./FaceStream');
var parser = new PaVEParser();
var face = new FaceStream();
var RGBA = new RGBAStream();
var socket = net.connect({ host: '192.168.1.1', port: 5555});
socket.pipe(parser).pipe(RGBA).pipe(face);
face.toObservable('data')
.select(function(faces) {
return faces[0];
})
.where(function (face) {
if (face) { return face.confidence > -1; }
})
.select(function (face) {
return "Face at " + face.x + ", " + face.y + ". Width is " + face.width;
})
.subscribe(function (x) {
console.log(x);
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment