一.安装
环境依赖
安装gpu版本的PaddlePaddle
代码语言:javascript复制pip install paddlepaddle-gpu -U
或者安装cpu版本的paddlepaddle
代码语言:javascript复制 pip install paddlepaddle -U
框架安装
代码语言:javascript复制pip install paddlehub
1测试
可以使用server_check()
可以检查本地与远端PaddleHub-Server的连接状态,使用方法如下:
import paddlehub
paddlehub.server_check()
# 如果可以连接远端PaddleHub-Server,则显示Request Hub-Server successfully。
# 如果无法连接远端PaddleHub-Server,则显示Request Hub-Server unsuccessfully。
我的运行可以:
二.入门
准备图:
1.人像分割
人像分割任务旨在将输入图片中的人像和背景区分开来。该任务有很多的应用场景,例如背景虚化、背景替换、影视后期处理等等。我们使用 humanseg_lite 来展示这个功能。
图片跟py同级目录,代码如下:
代码语言:javascript复制import paddlehub as hub
module = hub.Module(name="humanseg_lite")
res = module.segment(
paths = ["./test.jpg"],
visualization=True,
output_dir='humanseg_lite')
效果:
2.人体解析
人体解析是人像分割的细粒度任务。该任务旨在提取输入图片中人体的不同部件。相关模型经常和新兴的GAN模型一起使用,应用场景包括美颜、换衣服等等。我们使用 ace2p 来展示这个功能。
代码如下:
代码语言:javascript复制# coding=gbk
"""
作者:川川
@时间 : 2021/8/29 5:13
import paddlehub as hub
human_parser = hub.Module(name="ace2p")
res = human_parser.segmentation(
paths = ["./test.jpg"],
visualization=True,
output_dir='ace2p_output')
效果:
3.人脸检测
人脸检测任务旨在检测出输入图片中的每一张人脸的位置。应用的场景包括视频监控、人流量估计等等场景。我们使用 ultra_light_fast_generic_face_detector_1mb_640 来展示这个功能。
代码为:
代码语言:javascript复制# coding=gbk
"""
作者:川川
@时间 : 2021/8/29 5:20
群:970353786
"""
import paddlehub as hub
module = hub.Module(name="ultra_light_fast_generic_face_detector_1mb_640")
res = module.face_detection(
paths = ["./test.jpg"],
visualization=True,
output_dir='face_detection_output')
效果为:
4.关键点检测
关键点检测任务旨在识别输入图片中每一个人体的不同关键点信息,例如头部、肩膀、关节等等。依赖于模型能力的不同,能够检测到的关键点数量也不同。该任务一般用于人体美型、人体姿态估计等等,我们使用 openpose_body_estimation 来展示这个功能。
代码如下:
代码语言:javascript复制# coding=gbk
"""
作者:川川
@时间 : 2021/8/29 5:22
群:970353786
"""
import paddlehub as hub
module = hub.Module(name="openpose_body_estimation")
res = module.predict(
img="./test.jpg",
visualization=True,
save_path='keypoint_output')
效果:
5.中文词法分析
中文词法分析旨在对输入的语句进行分词、词性分析、命名实体识别,我们使用 lac 来展示这个功能。
代码如下:
代码语言:javascript复制# coding=gbk
"""
作者:川川
@时间 : 2021/8/29 5:25
群:970353786
"""
import paddlehub as hub
lac = hub.Module(name="lac")
test_text = ["马云,男,汉族,中共党员 [1] ,1964年9月10日生于浙江省杭州市,祖籍浙江省嵊州市谷来镇, 阿里巴巴集团主要创始人,现担任日本软银董事、大自然保护协会中国理事会主席兼全球董事会成员、华谊兄弟董事、生命科学突破奖基金会董事、联合国数字合作高级别小组联合主席。"]
print(lac.lexical_analysis(texts = test_text))
效果:
6.中文情感分析
代码如下:
代码语言:javascript复制# coding=gbk
"""
作者:川川
@时间 : 2021/8/29 5:30
群:970353786
"""
import paddlehub as hub
# senta = hub.Module(name="senta_bilstm", version="1.2.0")
senta = hub.Module(name="senta_bilstm")
test_text = ["她的脸渐渐变了颜色,眉毛拧到了一起,眼睛里迸发出一道道刀一般锋利的光,大声的呵斥道。"]
print(senta.sentiment_classify(texts = test_text))
返回:
意识就是预测积极的可能性为:0.5578,消极可能性为:0.4422
本文章项目文件下载地址:
代码语言:javascript复制链接:https://pan.baidu.com/s/1cc3IruYE5p1XQ1aFfPbinQ
提取码:clrt