User talk:Dead project: Difference between revisions

Jump to navigation Jump to search
Line 50: Line 50:
   var videoTracks = myMediaStream.getVideoTracks();
   var videoTracks = myMediaStream.getVideoTracks();
   var track = videoTracks[0];
   var track = videoTracks[0];
   var parameters = {"MaxFaces": 3};
   var myWorker = new Worker("textRecognition.js");
   track.addWorkerMonitor(new Worker("faceDetection.js", parameters));
   track.addWorkerMonitor(myWorker));
  myWorker.onmessage = function (oEvent) {
    console.log("Worker recognized: " + oEvent.data);
  };
   var elem = document.getElementById('videoelem');
   var elem = document.getElementById('videoelem');
   elem.mozSrcObject = dest.stream;
   elem.mozSrcObject = dest.stream;
Line 58: Line 61:


</source>
</source>
faceDetection.js
faceRecognition.js
<source lang="javascript">
<source lang="javascript">
var canvas = document.getElementsByTagName('canvas')[0];
var textDetector = WebImage.createTextDetector(img.width, img.height)
var context2d = canvas.getContext('2d');


onimageprocess = function (event) {
onimageprocess = function (event) {
Line 67: Line 69:
   // Do face detection
   // Do face detection
   // We might use built-in detection function or OpenCV in asm.js
   // We might use built-in detection function or OpenCV in asm.js
   var faceDetector = WebImage.createFaceDetector(img.width, img.height, event.parameters["MaxFaces"])
   var words;
  var faces;
   var numWord = textDetector.findText(img, words);
   var numberFaces = faceDetector.findFaces(img, faces);
   var recognizedText;  
   context2d.drawImage(img, 0, 0);
   for (var ix = 0; ix < numWord; ix++) {
   for (var ix = 0; ix < numberFaces; ix++) {
     recognizedText = recognizedText  + words[ix] + " ";
     var face = faces[ix];
    context2d.strokeRect(face.x, face.y, face.width, face.height);
   }
   }
   createImageBitmap(canvas, 0, 0, img.width, img.height).then(function(image) { event.outputFrame = image;});
   postMessage(recognizedText);
}
}
</source>
</source>
Confirmed users
770

edits

Navigation menu