您的位置:知识库 » 互联网

How-old.net 网站是如何运作的?

作者: Eason Wang  来源: 伯乐在线  发布时间: 2015-05-20 20:08  阅读: 562 次  推荐: 1   原文链接   [收藏]  

  最近微软的 How-old.net 网站非常火热,用户在该站上传照片后,它可以测算出照片中人物的性别和年龄。

  有国外网友在 Quora 上问了 How-old.net 的工作原理。下面是参与了该项目的微软项目经理 Eason Wang 的回复。

  (Eason Wang 是 Bing 的资深项目经理,此回答获得了三千三百个点赞)

  我本人就直接参与了这个项目。说实话,这个小网站的走红大大出乎了我的意料。我事后进行了一些为什么会走红的分析并且在 Medium 写了一篇文章

  回到主题吧,我的回答分成两个部分。第一个部分会讲讲如何快速地在任意的软件中实现一模一样的功能,第二个部分我会深入一些描述这项技术本身。

  在过去的几年和微软研发部门的合作中,就 Bing 的图像搜索技术而言,我们达到了最好的工业图像理解能力,这项技术迅速延伸到微软的其他产品。目前在 微软牛津项目主页 上,这项技术对所有的开发者开放。想要在自己的软件中实现一样的功能,你只需要简单地调用一下我们的 web API,就可以以 JSON 格式获取所需的一切信息。你可以尝试着在 www.projectoxford.ai 的这个页面上传一幅图像,它将在数秒内给你结果,脸部坐标、性别和年龄信息都在里面。Face API 只是我们在牛津项目上做的特性的其中一项。还有很多其他的核心功能来帮助打造创新性的应用。微软内部的 API 向大众开放让我感到很兴奋,我知道这会对开发社区起到深远的影响。这让之前看起来不可能的事情变得只用简单地调用一下 web API 就能做到了。#HowOldRobot 只是这些能力的小小展示,Azure 机器学习团队的一个开发人员只用了一天就把它开发出来了。

  (译者注:以下是 API 示例,为 JSON 格式)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

JSON:

[

  {

    "faceId": "5af35e84-ec20-4897-9795-8b3d4512a1f9",

    "faceRectangle": {

      "width": 60,

      "height": 60,

      "left": 276,

      "top": 43

    },

    "faceLandmarks": {

      "pupilLeft": {

        "x": "295.1",

        "y": "56.8"

      },

      "pupilRight": {

        "x": "317.9",

        "y": "59.6"

      },

      "noseTip": {

        "x": "311.6",

        "y": "74.7"

      },

      "mouthLeft": {

        "x": "291.0",

        "y": "86.3"

      },

      "mouthRight": {

        "x": "311.6",

        "y": "88.6"

      },

      "eyebrowLeftOuter": {

        "x": "281.6",

        "y": "50.1"

      },

      "eyebrowLeftInner": {

        "x": "304.2",

        "y": "51.6"

      },

      "eyeLeftOuter": {

        "x": "289.1",

        "y": "57.1"

      },

      "eyeLeftTop": {

        "x": "294.0",

        "y": "54.5"

      },

      "eyeLeftBottom": {

        "x": "293.0",

        "y": "61.0"

      },

      "eyeLeftInner": {

        "x": "297.8",

        "y": "58.7"

      },

      "eyebrowRightInner": {

        "x": "316.0",

        "y": "54.2"

      },

      "eyebrowRightOuter": {

        "x": "324.7",

        "y": "54.2"

      },

      "eyeRightInner": {

        "x": "312.9",

        "y": "60.9"

      },

      "eyeRightTop": {

        "x": "317.8",

        "y": "57.7"

      },

      "eyeRightBottom": {

        "x": "317.9",

        "y": "63.7"

      },

      "eyeRightOuter": {

        "x": "322.8",

        "y": "60.8"

      },

      "noseRootLeft": {

        "x": "304.0",

        "y": "60.2"

      },

      "noseRootRight": {

        "x": "312.2",

        "y": "61.2"

      },

      "noseLeftAlarTop": {

        "x": "302.6",

        "y": "70.2"

      },

      "noseRightAlarTop": {

        "x": "313.0",

        "y": "70.0"

      },

      "noseLeftAlarOutTip": {

        "x": "298.8",

        "y": "76.2"

      },

      "noseRightAlarOutTip": {

        "x": "315.2",

        "y": "76.6"

      },

      "upperLipTop": {

        "x": "307.3",

        "y": "84.0"

      },

      "upperLipBottom": {

        "x": "306.6",

        "y": "86.4"

      },

      "underLipTop": {

        "x": "305.5",

        "y": "89.6"

      },

      "underLipBottom": {

        "x": "304.1",

        "y": "94.0"

      }

    },

    "attributes": {

      "age": 24,

      "gender": "female",

      "headPose": {

        "roll": "4.0",

        "yaw": "31.3",

        "pitch": "0.0"

      }

    }

  }

]

  How-old.net  这个网站主要依赖于三个关键的技术:面部检测、性别分类和年龄检测。面部检测是另外两个的基础。对于年龄检测和性别检测来说,只是机器学习中很典型的回归和分类问题,涉及到了面部特征的表示、训练数据的采集、回归和分类模型的构建以及模型的优化。这方面有很多的已经发表的论文。如果你有兴趣想进一步了解就告诉我。

  另一方面,深度学习和对大规模数据的理解推动了图像理解的突破,为更加智能的系统和程序端口打开了一扇门。你可以看看我最新的关于图像图表如何应用于更进阶场景的博客:http://blogs.bing.com/search-qua…

标签:How-old.net

互联网热门文章

    互联网最新文章

      最新新闻

        热门新闻