tag 标签: face

相关博文
  • 热度 18
    2014-1-30 18:59
    1674 次阅读|
    0 个评论
    I've invited my colleague Brian Dipert, editor-in-chief of the Embedded Vision Alliance, to share his perspective on various face analysis algorithms used in embedded vision. He regularly discovers and reports on interesting embedded vision applications, some of which he discusses here. Face recognition—the technology that enables cameras (and the computers behind them) to identify people automatically, rapidly, and accurately—has become a popular topic in movies and television. Consider the 2002 blockbuster Minority Report . If you've seen it (and if you haven't, you definitely should), you might recall the scene where Tom Cruise's character, Chief John Anderton, is traversing a shopping mall. After scanning his face, sales kiosks greet him by name and solicit him with various promotions. Lest you think this is just a futuristic depiction, the British supermarket chain Tesco is now making it a reality. Plenty of other real-life face recognition implementations exist. Consider Facebook's tag suggestions, an automated system that identifies Friends' faces each time you upload a photo (a facility likely enhanced by the company's 2012 acquisition of Face.com), or Apple's iPhoto software, which automatically clusters pictures containing the same person. Don't forget the face recognition-based unlock option supported in the last few Android releases (likely enabled by Google's 2011 acquisition of Pittsburgh Pattern Recognition) and available on iOS via third-party applications. And the new Microsoft Xbox One and Sony PlayStation 4 game consoles support face recognition-based user login and interface customisation via their camera accessories (included with the Xbox One, optional with the PS4). Face recognition has made substantial progress in recent years, but it's admittedly not yet perfect. Some of its limitations are due to an insufficiently robust database of images. And some of its limitations are a result of algorithms not yet able to compensate fully for things like off-centre viewing angles, poor lighting, or subjects who are wearing hats or sunglasses or sport new facial hair or makeup. Ironically, face recognition's inability to identify people with guaranteed reliability provides privacy advocates with solace. However, other face analysis technologies are arguably more mature, enabling a host of amazing applications, and they are useful for addressing privacy concerns, since they don't attempt to identify individuals. For example, face analysis algorithms can accurately discern a person's gender. This capability is employed by electronic billboards that display varying messages depending on whether a man or woman is looking at them, as well as by services that deliver dynamically updated reports on meeting-spot demographics. Face analysis techniques can also make a pretty good guess as to someone's age bracket. Intel and Kraft harnessed this capability last year in developing a line of vending machines that dispense free pudding samples only to adults. More recently, the Chinese manufacturing subcontractor Pegatron used it to screen job applicants, flagging those who may be less than 15 years old, so it can avoid hiring underage workers. The mainstream press tends to latch on to any imperfection as a broad-brush dismissal of a particular technology. As engineers, we know how oversimplistic such an approach is. While RD and product developers continue to pursue the holy grail of 100% accurate face recognition, other face analysis techniques are sufficiently mature to support numerous compelling uses. How will you leverage them in your next-generation system designs? Visit the Embedded Vision Alliance website for plenty of application ideas, along with implementation details and supplier connections. Jeff Bier is the founder of the Embedded Vision Alliance.
  • 热度 23
    2014-1-30 18:57
    2054 次阅读|
    0 个评论
    I've invited my colleague Brian Dipert to share his perspective on various face analysis algorithms used in embedded vision. As editor-in-chief of the Embedded Vision Alliance, he regularly discovers and reports on interesting embedded vision applications, some of which he discusses here. Face recognition—the technology that enables cameras (and the computers behind them) to identify people automatically, rapidly, and accurately—has become a popular topic in movies and television. Consider the 2002 blockbuster Minority Report . If you've seen it (and if you haven't, you definitely should), you might recall the scene where Tom Cruise's character, Chief John Anderton, is traversing a shopping mall. After scanning his face, sales kiosks greet him by name and solicit him with various promotions. Lest you think this is just a futuristic depiction, the British supermarket chain Tesco is now making it a reality. Plenty of other real-life face recognition implementations exist. Consider Facebook's tag suggestions, an automated system that identifies Friends' faces each time you upload a photo (a facility likely enhanced by the company's 2012 acquisition of Face.com), or Apple's iPhoto software, which automatically clusters pictures containing the same person. Don't forget the face recognition-based unlock option supported in the last few Android releases (likely enabled by Google's 2011 acquisition of Pittsburgh Pattern Recognition) and available on iOS via third-party applications. And the new Microsoft Xbox One and Sony PlayStation 4 game consoles support face recognition-based user login and interface customisation via their camera accessories (included with the Xbox One, optional with the PS4). Face recognition has made substantial progress in recent years, but it's admittedly not yet perfect. Some of its limitations are due to an insufficiently robust database of images. And some of its limitations are a result of algorithms not yet able to compensate fully for things like off-centre viewing angles, poor lighting, or subjects who are wearing hats or sunglasses or sport new facial hair or makeup. Ironically, face recognition's inability to identify people with guaranteed reliability provides privacy advocates with solace. However, other face analysis technologies are arguably more mature, enabling a host of amazing applications, and they are useful for addressing privacy concerns, since they don't attempt to identify individuals. For example, face analysis algorithms can accurately discern a person's gender. This capability is employed by electronic billboards that display varying messages depending on whether a man or woman is looking at them, as well as by services that deliver dynamically updated reports on meeting-spot demographics. Face analysis techniques can also make a pretty good guess as to someone's age bracket. Intel and Kraft harnessed this capability last year in developing a line of vending machines that dispense free pudding samples only to adults. More recently, the Chinese manufacturing subcontractor Pegatron used it to screen job applicants, flagging those who may be less than 15 years old, so it can avoid hiring underage workers. The mainstream press tends to latch on to any imperfection as a broad-brush dismissal of a particular technology. As engineers, we know how oversimplistic such an approach is. While RD and product developers continue to pursue the holy grail of 100% accurate face recognition, other face analysis techniques are sufficiently mature to support numerous compelling uses. How will you leverage them in your next-generation system designs? Visit the Embedded Vision Alliance website for plenty of application ideas, along with implementation details and supplier connections. Jeff Bier is the founder of the Embedded Vision Alliance.  
  • 热度 23
    2013-1-26 10:39
    3710 次阅读|
    0 个评论
      Luxand是一个简便易用的人脸识别的开放API,如果你需要在你的程序中加入识别的类似功能,你可以尝试使用它,但是有一点需要引起注意,在我实际的使用过程中,发现Luxand的驱动下占用的内存较多,或者说,不是很容易将进行优化。如果你仔细观察示例程序,你会发现你的电脑的CPU仪表上的内存占用基本上是不变的占用,而如果是自己去使用API编程加入识别功能,你会发现其实占用的内存还是挺多的,当然,这也不是没有办法,所以,在使用的时候,需要对此加以注意。   让我们开始吧,在使用之前,最好阅读以下相关的文档,以对Luxand有一个大概的了解,Luxand的使用并不是完全的免费的,其使用方式是经过一层签名认证,这个签名,也就是相当于系统注册码一样的东西,是需要通过在Luxand上进行注册来使用的,不过这一步并不复杂,就是申请一个邮箱然后获取分配的号码,这是很长的一串号码,这里不提供号码,如果有需要,你可以自己申请一个。   Luxand的原理就是人脸识别的一些基本的算法,其特点在于抓住了人脸上的一些不变的特征点,这些特征点是不易被识别错误的,普通的一些算法中需要学习,这样可以进行特定的场合下的适应,但是如果是平常的应用其实不必这么复杂,人脸的不变的特征就可以帮助摄像头找到需要的图案的位置,当然,这样做也导致其对于人脸的旋转等的判断大打折扣,不过在普通的应用中,你是不需要这些的,这里开始介绍具体的使用方法了。   好了,先介绍一下具体的使用到的一些参量,使用Luxand的时候,如果是识别指定的照片中的人脸,那么你就不需要使用到摄像头,不用怀疑,Luxand提供了能力,后面会详细的提到这件事,这里面还是有很多好玩的应用可以制作的。但是还是把和摄像头有关的参量一并给出:   这里是以java的标准给出的,TCameras CameraList = new TCameras();这是摄像头的列表,你的电脑上可能有不同的类型,不止一个数量的摄像头,TCameras CameraNameList = new TCameras();  TCameras CameraDevicePathList = new TCameras();  HCamera CameraHandle = new HCamera();  这些也都是,基本上可以顾名思义,另外,在Luxand的官网上,也就是注册使用序列号(可以使用一年)的地方,有Luxand Document,也就是相当于API的说明。而就图像来说,在java中最重要的是HImage Image = new HImage();指示需要识别的图像。   另外,在准备阶段中,序列号和硬盘号也是需要的,所以可以这样定义,String HardwareID ;       }     这里是使用到摄像头的代码初始化部分,所以如果不适用摄像头,那么和摄像头相关的几个函数就不用了,也就是在函数名中带有camera的,其实这也是值得学习的,在命名的时候,需要让这些参量变得易于理解和使用。   在Luxand中,提供了打开图像的函数,其实在摄像头的连续识别中,道理是一样的,不过做了很多的优化,也是连续的得到图像,然后送入识别函数,仅此而已。   具体的函数是:   int FSDK.LoadImageFromFile(HImage Image, String FileName);    得到了图片,在之前我们的HImage参量中,然后,该函数FSDK.DetectFacialFeatures出场了, 首先看看照片中是否存在人脸:  if(FSDK.FSDKE_OK==FSDK.DetectFacialFeatures(for_detect,feature_for_me)),你可不恩能够蒙我,既然有人脸,就把人脸的位置信息识别出来: if(FSDK.FSDKE_OK==FSDK.DetectFacialFeatures(detect,feature)),进行识别后,可以使用脸部特征存储的参量中的信息了,feature.features .y是第一个特征的y坐标,其他就同理了,不再赘述。不过你需要有一张特征的“地图”,嗯,就在附件中,或者你可以在Luxand帮助手册中找到。   那么,再加一些摄像头识别的东西:  if(FSDK.FSDKE_OK == FSDKCam.OpenVideoCamera(camera_name,CameraHandle)),先打开摄像头,当打开成功后,可以从摄像头中一幅一幅图像的拿出来:  if(FSDK.FSDKE_OK == FSDKCam.GrabFrame(CameraHandle,Image)) 这里的Image是一个HImage类型的参量,下面的步骤基本上和图像识别无异了,那么,利用这个我们可以做啥呢?嗯,很多的有意思的东西都变得可能了。   比如,寒冷的冬天,你在电脑上读一份资料,手还得放在外面滑动鼠标,多么的不惬意啊,让Luxand帮助你吧,首先做一个简易的阅读器,可以读取鼠标的滑动信息,从摄像头中读取你的眼睛的“一举一动”,并读取你的眼部的运动,好了,然后模拟你的鼠标的移动,代码也是容易找到的:   void mouseWheelSetup2() {     addMouseWheelListener( // the rest of of this is acutally the argument list for the function call             new java.awt.event.MouseWheelListener()              {                  public void mouseWheelMoved(java.awt.event.MouseWheelEvent evt)                   {                     viewadjust -= 9*evt.getWheelRotation();   // 调节当前页面的移动                  }             }    ) // this is the end of the argument list    ;    // this single semicolon is the entire, complete function body }    你的双手就不需要再忍受寒冷的侵袭啦!当然,创意是无止境的,你还可以想出更多的应用来。
相关资源