资源 | ChainerCV:基于Chainer的深度学习计算机视觉实用库(内含工具集)

2017 年 8 月 16 日 机器之心

选自GitHub

作者:二井谷勇佑(Yusuke Niitani)

机器之心编译

参与:黄小天、蒋思源


近日,Preferred Networks 通过其研究博客发布了深度学习计算机视觉实用库 ChainerCV,它基于 Chainer,能够简化计算机视觉的训练和应用过程,并含有用于计算机视觉研究的必备工具集。未来,ChainerCV 将会支持分类任务;其论文已被 ACM Multimedia 2017 开源软件竞赛接收,并很快在 arXiv 上开放。


我们发布了 ChainerCV,一个用于计算机视觉的深度学习实用库。这个库旨在通过 Chainer 简易化计算机视觉的训练和深度学习模型应用的过程。它包含计算机视觉模型的高质量实现,以及开展计算机视觉研究的必备工具集。


  • GitHub 地址:https://github.com/chainer/chainercv

  • 文档:http://chainercv.readthedocs.io/en/stable/



ChainerCV 支持的功能


计算机视觉模型的高质量实现


软件的质量通过文档和测试获得保证。除了那些传统的软件工程实践之外,对于想要尝试新想法的研发人员来说,一个与前沿论文性能一致的训练脚本同样重要。我们在 GitHub 上列举了实现的性能,其评估脚本可用于验证本地计算机上的分数。所有的实现都与原始报告的分数相一致。


我们的实现尽可能忠于参考实现。无论何时进行更改,文档中都会生成一个相应的评论。


当前,ChainerCV 提供了目标检测和语义分割模型(Faster R-CNN、SSD 和 SegNet)的实现。


简单易用的实现


在 ChainerCV 中执行推理非常容易。ChainerCV 具有大量的已训练权重,可在运行时自动从网络上下载,因此用户无需担心下载或者记住已训练权重的文件位置。同样,ChainerCV 提供了简单统一的界面,从而为解决相同任务的不同模型执行推理。例如,Faster R-CNN 和 SSD 都具备一个被称作「预测」的方法,它可以接收图像并返回物体检测的结果。


转换


ChainerCV 还提供了通用函数以在馈送到神经网络之前执行数据预处理。用户可以通过定义函数创建定制化的预处理流程,因此以描述转换输入数据的过程。


计算机视觉的研究工具


ChainerCV 包含了一组指导计算机视觉研究的工具:


  • 为一般视觉数据集(如 PASCAL VOC 任务的目标识别数据集)而构建的数据集加载器

  • 能用于数据预处理/数据增强的转换

  • 可视化

  • 一般度量方法的评估代码


可视化执行模型所得到的推理结果



在上图左侧,我们的物体检测模型推理出一个输出结果。该物体检测是一种带有物体定位的图像识别任务。上图右侧显示了输入图片和输出的语义分割图像。语义分割是一种像素级分类任务,它将整张图片按属性分割为不同的对象。


安装


  
    
    
    
  1. $ pip install -U numpy

  2. $ pip install chainercv


使用 Anaconda 安装 ChainerCV 的指南:http://chainercv.readthedocs.io/en/stable/#install-guide


环境要求


  • Chainer 和其依赖项

  • Pillow

  • Cython(构建要求)


附加特征


  • Matplotlib

  • OpenCV


Python 2.7.12 和 3.6.0 下的环境已经获得测试。


主分支在稳定版(v2)和开发版(v3)都能运行


对于使用 Chainer v1 的用户,请使用 0.4.11 版本,我们可以使用命令行「pip install chainercv==0.4.11」安装该版本,但是该分支并没有进行维护。


使用 ChainerCV 的注意事项


计算机视觉上的数据很多都有不同的表征标准,例如色彩通道规则等。所以用户需要了解本软件库默认采用的规范就很重要了。ChainerCV 使用的全部约定可以在 Github 中的 README 页面中找到。


ChainerCV 未来的计划


  • 计划未来能支持更广泛的任务,很快 ChainerCV 就能支持分类任务了。

  • 计划提供在大数据集上训练的预训练模型,但这在有限的计算力下比较困难或比较耗时。

  • ChainerCV 的论文已被 ACM Multimedia 2017 开源软件竞赛接收,并很快在 arXiv 上开放。 



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:editor@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com

登录查看更多
3

相关内容

计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【伯克利】再思考 Transformer中的Batch Normalization
专知会员服务
40+阅读 · 2020年3月21日
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
【干货】用BRET进行多标签文本分类(附代码)
专知会员服务
84+阅读 · 2019年12月27日
计算机视觉最佳实践、代码示例和相关文档
专知会员服务
18+阅读 · 2019年10月9日
深度学习「CV」学习实践指南!
专知
10+阅读 · 2020年6月21日
干货 | 万物皆可「计算机视觉」
AI科技评论
6+阅读 · 2019年2月10日
只需10行Python代码,就能实现计算机视觉中目标检测
深度学习与计算机视觉任务应用综述
深度学习与NLP
50+阅读 · 2018年12月18日
CNN与RNN中文文本分类-基于TensorFlow 实现
七月在线实验室
13+阅读 · 2018年10月30日
计算机视觉领域最全汇总
极市平台
6+阅读 · 2018年9月4日
一文读懂目标检测模型(附论文资源)
数据派THU
8+阅读 · 2018年5月27日
keras系列︱深度学习五款常用的已训练模型
数据挖掘入门与实战
10+阅读 · 2018年3月27日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Arxiv
4+阅读 · 2018年5月10日
Arxiv
6+阅读 · 2018年3月31日
Arxiv
7+阅读 · 2018年1月24日
Arxiv
3+阅读 · 2017年11月21日
VIP会员
相关资讯
深度学习「CV」学习实践指南!
专知
10+阅读 · 2020年6月21日
干货 | 万物皆可「计算机视觉」
AI科技评论
6+阅读 · 2019年2月10日
只需10行Python代码,就能实现计算机视觉中目标检测
深度学习与计算机视觉任务应用综述
深度学习与NLP
50+阅读 · 2018年12月18日
CNN与RNN中文文本分类-基于TensorFlow 实现
七月在线实验室
13+阅读 · 2018年10月30日
计算机视觉领域最全汇总
极市平台
6+阅读 · 2018年9月4日
一文读懂目标检测模型(附论文资源)
数据派THU
8+阅读 · 2018年5月27日
keras系列︱深度学习五款常用的已训练模型
数据挖掘入门与实战
10+阅读 · 2018年3月27日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Top
微信扫码咨询专知VIP会员