50行Python代码识别杨超越的颜值

简介: 本次文章的案例就是使用百度的api来进行人脸识别,但凡你学过一点点Python,你就可以借助百度的力量来进行人脸识别并检测颜值、年龄等,你要知道现在百度搜索不要钱了


行哥又又又又拿杨超越做封面了,只因为昨天群里有小伙伴想学下人脸识别

但是如果要详细介绍的话,那这个故事得从opencv的那个夏天说起,对于python小白来说,门槛有点高。所以行哥今天先给大家介绍一个几秒就可以上手的人脸识别案例,下次行哥再深入通过原理来介绍

本次文章的案例就是使用百度的api来进行人脸识别,但凡你学过一点点Python,你就可以借助百度的力量来进行人脸识别并检测颜值、年龄等,你要知道现在百度搜索不要钱了image.png

就像上图所示,只要你注册了百度开放平台的账号,获取百度api的参数APP_ID ,API_KEY ,SECRET_KEY上图里的所有功能随意你调用,很多接口甚至无限使用image.png

所以行哥利用这个百度开发平台的接口,仅50行代码做一个颜值打分系统给大家分享

1.先看效果图image.png

作为杨超越20年的铁粉,非常想看一下她的人脸识别结果,使用百度的接口代码可以预测杨超越的年龄是22岁,性别女,颜值79.95。不过这个颜值可能因为脸的角度和光线问题上下波动,所以杨超越的颜值打分还可以再提高的。image.png

后来,行哥用了下自己的照片进行颜值打分,识别效果还是蛮不错的。这里大家也可以用下面的代码来测测自己的颜值哦,如果太低的话可以多读书来提高

2.no bb show your code

关于百度API的使用方法可以参考这个视频网站:https://cloud.baidu.com/doc/APIGUIDE/s/Ek1mzbeek,只要了解一些http请求,基础Python知识就可以使用image.png

核心代码在这里,只使用了三个模块

   cv2模块导入图片

   base64模块进行图片编码

   aip接口进行人脸识别(安装命令pip install baidu-aip)

 

import base64
from aip import AipFace
import cv2
options = {'face_field': 'age,gender,beauty', "max_face_num": 10}
img = cv2.imread(file_path)
# 图片放文字
# 设置文件的位置、字体、颜色等参数
font = cv2.FONT_HERSHEY_DUPLEX
# font = ImageFont.truetype("simhei.ttf", 20, encoding="utf-8")
color = (0, 0, 255)
for item in result['result']['face_list']:
    x = int(item['location']['left'])
    y = int(item['location']['top'])
    w = item['location']['width']
    h = item['location']['height']
    age = item['age']
    beauty = item['beauty']
    gender = item['gender']['type']
    cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 3)
    cv2.putText(img, 'age:%s' % age, (x, y + h + 10), font, 1, color, 1)
    cv2.putText(img, 'beauty:%s' % beauty, (x, y + h + 30), font, 1, color, 1)
    cv2.putText(img, 'gender:%s' % gender, (x, y + h + 50), font, 1, color, 1)
cv2.imshow('Image', img)
# 按任意键退出
key = cv2.waitKey()
if key == 27:
    # 销毁所有窗口
    cv2.destroyAllWindows()

3.最后注意

这个项目,只是利用百度提供了免费的人工智能接口来进行调用,学习和使用的门槛都很低。如果没学过人工智能只会一点python代码完全可以利用这个接口做一些有意思的项目

但是,如果你想去面试一家算法的岗位,你要是想说调用百度接口做的人脸识别项目,行哥劝你还是尽早转行吧


相关文章
|
8天前
|
缓存 监控 测试技术
Python中的装饰器:功能扩展与代码复用的利器###
本文深入探讨了Python中装饰器的概念、实现机制及其在实际开发中的应用价值。通过生动的实例和详尽的解释,文章展示了装饰器如何增强函数功能、提升代码可读性和维护性,并鼓励读者在项目中灵活运用这一强大的语言特性。 ###
|
11天前
|
缓存 开发者 Python
探索Python中的装饰器:简化代码,增强功能
【10月更文挑战第35天】装饰器在Python中是一种强大的工具,它允许开发者在不修改原有函数代码的情况下增加额外的功能。本文旨在通过简明的语言和实际的编码示例,带领读者理解装饰器的概念、用法及其在实际编程场景中的应用,从而提升代码的可读性和复用性。
|
7天前
|
Python
探索Python中的装饰器:简化代码,提升效率
【10月更文挑战第39天】在编程的世界中,我们总是在寻找使代码更简洁、更高效的方法。Python的装饰器提供了一种强大的工具,能够让我们做到这一点。本文将深入探讨装饰器的基本概念,展示如何通过它们来增强函数的功能,同时保持代码的整洁性。我们将从基础开始,逐步深入到装饰器的高级用法,让你了解如何利用这一特性来优化你的Python代码。准备好让你的代码变得更加优雅和强大了吗?让我们开始吧!
15 1
|
12天前
|
设计模式 缓存 监控
Python中的装饰器:代码的魔法增强剂
在Python编程中,装饰器是一种强大而灵活的工具,它允许程序员在不修改函数或方法源代码的情况下增加额外的功能。本文将探讨装饰器的定义、工作原理以及如何通过自定义和标准库中的装饰器来优化代码结构和提高开发效率。通过实例演示,我们将深入了解装饰器的应用,包括日志记录、性能测量、事务处理等常见场景。此外,我们还将讨论装饰器的高级用法,如带参数的装饰器和类装饰器,为读者提供全面的装饰器使用指南。
|
8天前
|
存储 缓存 监控
掌握Python装饰器:提升代码复用性与可读性的利器
在本文中,我们将深入探讨Python装饰器的概念、工作原理以及如何有效地应用它们来增强代码的可读性和复用性。不同于传统的函数调用,装饰器提供了一种优雅的方式来修改或扩展函数的行为,而无需直接修改原始函数代码。通过实际示例和应用场景分析,本文旨在帮助读者理解装饰器的实用性,并鼓励在日常编程实践中灵活运用这一强大特性。
|
10天前
|
机器学习/深度学习 数据采集 人工智能
探索机器学习:从理论到Python代码实践
【10月更文挑战第36天】本文将深入浅出地介绍机器学习的基本概念、主要算法及其在Python中的实现。我们将通过实际案例,展示如何使用scikit-learn库进行数据预处理、模型选择和参数调优。无论你是初学者还是有一定基础的开发者,都能从中获得启发和实践指导。
25 2
|
12天前
|
数据库 Python
异步编程不再难!Python asyncio库实战,让你的代码流畅如丝!
在编程中,随着应用复杂度的提升,对并发和异步处理的需求日益增长。Python的asyncio库通过async和await关键字,简化了异步编程,使其变得流畅高效。本文将通过实战示例,介绍异步编程的基本概念、如何使用asyncio编写异步代码以及处理多个异步任务的方法,帮助你掌握异步编程技巧,提高代码性能。
49 4
|
2月前
|
人工智能 数据挖掘 数据处理
揭秘Python编程之美:从基础到进阶的代码实践之旅
【9月更文挑战第14天】本文将带领读者深入探索Python编程语言的魅力所在。通过简明扼要的示例,我们将揭示Python如何简化复杂问题,提升编程效率。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开一扇通往高效编码世界的大门。让我们开始这段充满智慧和乐趣的Python编程之旅吧!
|
6月前
|
算法 编译器 开发者
如何提高Python代码的性能:优化技巧与实践
本文探讨了如何提高Python代码的性能,重点介绍了一些优化技巧与实践方法。通过使用适当的数据结构、算法和编程范式,以及利用Python内置的性能优化工具,可以有效地提升Python程序的执行效率,从而提升整体应用性能。本文将针对不同场景和需求,分享一些实用的优化技巧,并通过示例代码和性能测试结果加以说明。
|
1月前
|
大数据 Python
Python 高级编程:深入探索高级代码实践
本文深入探讨了Python的四大高级特性:装饰器、生成器、上下文管理器及并发与并行编程。通过装饰器,我们能够在不改动原函数的基础上增添功能;生成器允许按需生成值,优化处理大数据;上下文管理器确保资源被妥善管理和释放;多线程等技术则助力高效完成并发任务。本文通过具体代码实例详细解析这些特性的应用方法,帮助读者提升Python编程水平。
92 5