为什么选择Pet?¶
Pet是一个基于pytorch的开源的工具箱,支持更加快速、高效地进行计算机视觉任务方面的研究。
下面从各个方面对Pet的各种特性进行介绍,帮助用户更快的了解Pet。
功能¶
精通各种计算机视觉的任务:支持最新的目标检测以及基于区域的实例分析算法,包括图像分类、目标检测、语义分割、全景分割、姿态估计、人体解析、长尾识别、自监督学习等多种视觉任务的训练与测试
提供最新的深度学习算法实现:提供深度学习领域最前沿的各类算法具体实现
旨在帮助开发者快速开始研究:能够帮助开发者通过在Pet已有实现方案的基础上,进行对比试验和进行算法创新。
特性¶
模块化,灵活的配置系统: Pet提供了一个强大的配置系统,通过config系统不同的参数设置,可以轻易地配置不同的网络结构,训练和测试不同优化策略的计算机视觉任务。
实现机器视觉中的SOTA算法:提供了丰富的、前沿的、有价值的计算机视觉领域内的完整算法方案可供选择;
清晰易懂的训练和预测过程:Pet拥有逻辑性极强的代码风格,能够清晰得展示不同任务的训练、测试程的流程和细节。同时Pet还提供了完备的日志和异常预警功能,方便掌握训练和测试过程中的各种细节。
对比¶
支持机器视觉领域的多种类任务:针对计算机视觉领域,目前已有Detectron、maskrcnn-benchmark(由Facebook人工智能实验室支持)、mmdetection(由香港中文大学支持)以及simpledet(由图森未来支持)、torchcv(由北京大学支持)、GluonCV(由dmlc支持)等几个用于目标检测和实例分析的计算机视觉平台,Pet超越以上平台之处在于其所支持视觉任务的全面性,通过任务支持可以了解Pet与其他平台的详细对比情况。
提供大量的高质量预训练模型:给出了丰富的预训练模型,使得训练更加方便快速。
在速度和精度拥有独特的优势:在保证精度和内存消耗上与相应算法最好的实现案例基本一致的基础上,更好快速地完成任务功能的实现。具体对比请参考精度对比、速度对比和内存消耗对比。
拓展¶
易拓展:提供了各类基础函数的实现,能够帮助用户快速实现新算法、验证新的想法、添加新功能;
规范化:函数实现的代码具有规范统一的特性,扩展性强,便于理解和更改;
不断更新:Pet会不断更新新功能,拓展到更多的计算机视觉任务,同时欢迎用户来自定义拓展,下面给出拓展的注意内容。
未来发展¶
对于Pet未来的发展,我们希望Pet能够在现有基础上,在计算机视觉领域支持尽可能多的先进且有价值(solid)的算法,同时,我们还希望拓宽Pet能够支持的非视觉任务的领域,比如:
同时,我们还希望拓宽Pet能够支持的视觉任务的领域,比如:
对抗生成网络
3D 关键点、3D点云
带有时序信息的图像分析:视频分类,视频动作识别
多数据源输入,多媒体分析
关系识别
我们对Pet的规划不仅仅限于计算机视觉领域,我们更希望Pet的能力范围能够包含自然语言处理,语音识别等其他人工智能领域的重要技术,能够让Pet成为一个全栈式的人工智能学术研究与业务开发平台,欢迎感兴趣的有识之士对Pet的发展壮大提供有价值的贡献,我们将非常感激。
上传注意事项¶
1、上传内容应遵守
确定自己的测试正常,风格、架构都和pet一致
确保不对已有代码产生冲突
将自己的环境版本,代码功能、注意事项加在说明性文档中
将自己的试验结果和对应的介绍信息(指标、硬件、环境的介绍)
如新加功能涉及某论文或文档,请加入相关文档或链接
2、上传内容应包括:
说明性文档(README.md)
包含新增功能的工程
功能对比结果与介绍信息
功能参考文献
精度对比¶
| Pet | Detectron | mmdetection | simpledet | maskrcnn-benchmark | torch.cv | GluonCV | |
|---|---|---|---|---|---|---|---|
| 单标签图像分类 | |||||||
| 语义分割 | |||||||
| 目标检测、实例分割 | |||||||
| 姿态估计 | |||||||
| 密集姿态估计 | |||||||
| 人体部位分析、人体部位检测 | |||||||
| 目标重实别 | |||||||
| 对抗生成网络 |
速度对比¶
| Pet | Detectron | mmdetection | simpledet | maskrcnn-benchmark | torch.cv | GluonCV | |
|---|---|---|---|---|---|---|---|
| 单标签图像分类 | |||||||
| 语义分割 | |||||||
| 目标检测、实例分割 | |||||||
| 姿态估计 | |||||||
| 密集姿态估计 | |||||||
| 人体部位分析、人体部位检测 | |||||||
| 目标重实别 | |||||||
| 对抗生成网络 |
内存消耗对比¶
| Pet | Detectron | mmdetection | simpledet | maskrcnn-benchmark | torch.cv | GluonCV | |
|---|---|---|---|---|---|---|---|
| 单标签图像分类 | |||||||
| 语义分割 | |||||||
| 目标检测、实例分割 | |||||||
| 姿态估计 | |||||||
| 密集姿态估计 | |||||||
| 人体部位分析、人体部位检测 | |||||||
| 目标重实别 | |||||||
| 对抗生成网络 |
任务支持¶
| Pet | Detectron | mmdetection | simpledet | maskrcnn-benchmark | torch.cv | GluonCV | |
|---|---|---|---|---|---|---|---|
| 单标签图像分类 | ✓ | ✓ | ✓ | ||||
| 语义分割 | ✓ | ✓ | ✓ | ||||
| 目标检测、实例分割 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| 姿态估计 | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| 密集姿态估计 | ✓ | ||||||
| 人体部位分析、人体部位检测 | ✓ | ||||||
| 目标重实别 | ✓ | ||||||
| 对抗生成网络 | ✓ |