基于HTML5的人脸识别技术

然后打开下面地址:

创新互联公司主营北流网站建设的网络公司,主营网站建设方案,成都app开发,北流h5微信小程序搭建,北流网站营销推广欢迎北流等地区企业咨询

http://neave.com/webcam/html5/face/

当你摇头晃脑的时候,那副眼镜会跟着移动并帮你戴上眼镜。

你可以查看网页源码来了解具体的实现细节。

———————————–我是分界线———————————————

这是一篇国外的文章,介绍如何通过 WebRTC、OpenCV 和 WebSocket 技术实现在 Web 浏览器上的人脸识别,架构在 Jetty 之上。

实现的效果包括:

还能识别眼睛

人脸识别的核心代码:

页面:

XML/HTML Code
复制内容到剪贴板

  
 
 
 
  1.  
  2.  
  3.  
 
  •  
  • var video = $("#live").get()[0];   
  • var canvas = $("#canvas");   
  • var ctx = canvas.get()[0].getContext('2d');   
  • navigator.webkitGetUserMedia("video",   
  • function(stream) {   
  • video.src = webkitURL.createObjectURL(stream);   
  • },   
  • function(err) {   
  • console.log("Unable to get video stream!")   
  • }   
  • )   
  • timer = setInterval(   
  • function () {   
  • ctx.drawImage(video, 0, 0, 320, 240);   
  • }, 250);   
  •  
  • JavaScript Code
    复制内容到剪贴板

      
     
     
     
    1. publicclass FaceDetection {   
    2. privatestaticfinal String CASCADE_FILE ="resources/haarcascade_frontalface_alt.xml";   
    3. privateint minsize = 20;   
    4. privateint group = 0;   
    5. privatedouble scale = 1.1;   
    6. /**  
    7. * Based on FaceDetection example from JavaCV.  
    8. */ 
    9. publicbyte[] convert(byte[] imageData) throws IOException {   
    10. // create image from supplied bytearray 
    11. IplImage originalImage = cvDecodeImage(cvMat(1, imageData.length,CV_8UC1, newBytePointer(imageData)));   
    12. // Convert to grayscale for recognition 
    13. IplImage grayImage = IplImage.create(originalImage.width(), originalImage.height(), IPL_DEPTH_8U, 1);   
    14. cvCvtColor(originalImage, grayImage, CV_BGR2GRAY);   
    15. // storage is needed to store information during detection 
    16. CvMemStorage storage = CvMemStorage.create();   
    17. // Configuration to use in analysis 
    18. CvHaarClassifierCascade cascade = newCvHaarClassifierCascade(cvLoad(CASCADE_FILE));   
    19. // We detect the faces. 
    20. CvSeq faces = cvHaarDetectObjects(grayImage, cascade, storage, scale, group, minsize);   
    21. // We iterate over the discovered faces and draw yellow rectangles around them. 
    22. for (int i = 0; i < faces.total(); i++) {   
    23. CvRect r = new CvRect(cvGetSeqElem(faces, i));   
    24. cvRectangle(originalImage, cvPoint(r.x(), r.y()),   
    25. cvPoint(r.x() + r.width(), r.y() + r.height()),   
    26. CvScalar.YELLOW, 1, CV_AA, 0);   
    27. }   
    28. // convert the resulting image back to an array 
    29. ByteArrayOutputStream bout = new ByteArrayOutputStream();   
    30. BufferedImage imgb = originalImage.getBufferedImage();   
    31. ImageIO.write(imgb, "png", bout);   
    32. return bout.toByteArray();   
    33. }   
    34. }   

    原文链接:http://www.html5china.com/course/20120528_3742.html

    文章名称:基于HTML5的人脸识别技术
    文章地址:http://www.mswzjz.cn/qtweb/news2/24202.html

    攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能

    贝锐智能技术为您推荐以下文章

    微信小程序知识

    同城分类信息