人脸识别 | 如何解析URL,并给出人脸检测结果

本文给出最简单的人脸检测测试代码,与常见的场景不同的是,需要从互联网抓取图像,并非本地上存在的图像。

所需依赖:

OpenCV NumPy urllib

检测思想

首先使用urllib库从URL获取图像地址,并将其转换为图像,然后调用cv自带的Haar人脸检测,判断图像中是否有人脸。

具体代码

#!/usr/bin/env python2
#-*- coding: utf-8 -*-
import cv2
import sys
import numpy as np
import urllib

url = sys.argv[1]

cascPath = sys.argv[2]

def url_to_image(url):
    resp = urllib.urlopen(url)
    image = np.asarray(bytearray(resp.read()), dtype="uint8")
    image = cv2.imdecode(image, cv2.IMREAD_COLOR)
    return image

faceCascade = cv2.CascadeClassifier(cascPath)

image = url_to_image(url)

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

faces = faceCascade.detectMultiScale(gray,scaleFactor=1.1,minNeighbors=5,minSize=(30, 30))

print len(faces)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏進无尽的文章

绘图-几个较复杂统计图案例的实现分析

我们可以看到上图的动图是一组组合动画,共有四部分组成:坐标横竖虚线的动画、曲线的动态绘制、小圆点的动画、渐变区域的动画。下面逐个分析

542
来自专栏转载gongluck的CSDN博客

ffmpeg的时基

FFMPEG的很多结构中有AVRational time_base;这样的一个成员,它是AVRational结构的 typedef struct AVRatio...

2874
来自专栏Java与Android技术栈

图像中二维码的检测和定位

所谓开操作是指先腐蚀后膨胀的操作。在之前的文章二值图像分析:案例实战(文本分离+硬币计数)曾经介绍过开操作的用途。

903
来自专栏hightopo

基于 HTML5 WebGL 的 3D 网络拓扑结构图

1392
来自专栏小古哥的博客园

CSS3边框图片-像素虚边的问题

虽然CSS3新增了这个功能,但是在W3school里面并没有给出具体详细的解释,还好网上不乏大神给你我们很全面的解释其中的原理-css3:border-imag...

2174
来自专栏哈雷彗星撞地球

iOS动画三板斧(三)--UIDynamic动画介绍实战

终于到了动画三板斧第三篇了,这里用UIDynamic来实现动画。 UIDynamic是iOS 7之后新添加的一些物理仿真动画库,包含在UIKit框架中。

694
来自专栏WOLFRAM

Mathematica 11 在数学教学中的新功能部分示例

1647
来自专栏数据小魔方

数据地图系列4|图片植入式气泡数据地图

今天跟大家分享数据地图系列的第四篇——图片植入式气泡数据地图! 本篇内容的思路是这样的: 首先利用各个省会的虚拟坐标信息制作气泡图,然后通过将PNG格式的地图...

2716
来自专栏HT

基于HTML5和WebGL的3D网络拓扑结构图

现在,3D模型已经用于各种不同的领域。在医疗行业使用它们制作器官的精确模型;电影行业将它们用于活动的人物、物体以及现实电影;视频游戏产业将它们作为计算机与视频游...

2065
来自专栏iOS开发攻城狮的集散地

CALayer系列、CGContextRef、UIBezierPath、文本属性Attributes

1965

扫码关注云+社区