0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CVChain:一个较完善的计算机视觉工具链

新机器视觉 来源:新机器视觉 作者:新机器视觉 2020-11-27 09:56 次阅读

我们这一年来做的一些工作(总结见文章最下方)现在差不多形成了一个较完善的计算机视觉工具链——CVChain。我们这一年来做的一些工作(总结见文章最下方)现在差不多形成了一个较完善的计算机视觉工具链——CVChain。

纵向上它涵盖了一个计算机视觉任务的生命周期:数据分析与模型选型、模型训练、发现模型存在的问题并优化、模型加速、模型SDK编写;横向上它包含了计算机视觉中三个基本任务:分类、语义分割、目标检测;与此同时它还总结了计算机视觉入门到进阶的学习框架。一言以蔽之:有了CVChain,妈妈再也不用担心我搞不定计算机视觉!

CVChain是我们平常做项目或者打比赛过程中打磨出来的,它们可以满足计算机视觉算法工程师日常大部分需求,比如:

1.刚踏入计算机视觉领域,不知道从何学起,需要一张学习的地图:

https://github.com/mileistone/study_resources/blob/master/modeling/learning_framework/learning_framework_general.md

部分示例

带着自己一步一步领略计算机视觉的风采;

2.已经成为一名合格的计算机视觉算法工程师,开始接任务。当任务来了,需要分析数据分析数据以进行模型选型、模型超参的初步设定;

https://github.com/Media-Smart/volkscv/tree/master/volkscv/analyzer/statistics

3.模型确定后,得训练模型(可能涉及到分类、语义分割、文字识别、目标检测等等),这个时候需要一个趁手的训练工具;

分类:
https://github.com/Media-Smart/vedacls

语义分割
https://github.com/Media-Smart/vedaseg

示例

文字识别
https://github.com/Media-Smart/vedastr

示例

目标检测
https://github.com/Media-Smart/vedadet

4.模型训练完之后,效果不够好,我们需要把FP、FN打印出来,分析模型存在的问题;

https://github.com/Media-Smart/volkscv/tree/master/volkscv/analyzer/visualization

5.模型训练好之后,需要将模型转换为应用并进行部署,这里需要用TensorRT对模型进行加速,然后根据业务需求编写Python前端或者C++前端的SDK;

加速
https://github.com/Media-Smart/volksdep

Python前端
https://github.com/Media-Smart/flexinfer

示例

C++前端
https://github.com/Media-Smart/cheetahinfer

6.计算机行业竞争激烈,平常得抽空加强学习,无论是工程、模型还是算法方面,都需要持续不断学习,把自己训练为一名六边形战士。

工程
https://github.com/mileistone/study_resources/tree/master/engineering

模型
https://github.com/mileistone/study_resources/tree/master/modeling

算法
https://github.com/mileistone/study_resources/tree/master/modeling/optimization_and_generalization

上述的“2、数据分析”提供以下功能。

1、浏览图片和标注

比如分类、目标检测、语义分割等等,这可以帮助我们对数据有一个感性的认识,可以定性出来这个任务有哪些挑战。

2、图片和标注分析

比如图片大小分布,图片长宽比分布,图片中GT框数量分布,GT框长宽分布等等,这可以让我们对数据有一些理性的认识,让我们可以定量这个任务存在的挑战。

3、打印模型预测结果中的FP、FN

比如分类。

比如目标检测。

比如语义分割。

打印FP、FN可以让我们发现模型存在的问题,进而有助于我们分析问题、定位问题直至解决问题。

4、anchor分析

比如GT匹配上的anchor数量分布,GT与匹配上anchor的IoU分布等等。这有助于我们设计出更好的anchor策略,比如anchor应该放在哪几层,每一层anchor数量应该设置多少,对应的大小和长宽比是多少,以及label assignment该怎么做等等。

汇总

https://github.com/Media-Smart/vedaseg

https://github.com/Media-Smart/vedastr

https://github.com/Media-Smart/vedacls

https://github.com/Media-Smart/vedadet

Media-Smart/volksdep,https://github.com/Media-Smart/volksdep

Media-Smart/flexinfer,https://github.com/Media-Smart/flexinfer

https://github.com/Media-Smart/cheetahinfer

https://github.com/Media-Smart/volkscv

https://github.com/mileistone/study_resources

- 数据分析 - [volkscv](https://github.com/Media-Smart/volkscv/tree/master/volkscv/analyzer/) - 数据浏览 -> 获取感性认识 - 图片、标注 - 数据统计 -> 获取理性认识 - 图片统计 - 大小 - 长宽比 - 等等 - 标注统计 - 类别 - 各个类别有多少实例 - 等等 - GT框 - 大小 - 长宽比 - 等等 - anchor分析 - GT挂上anchor的数量分布 - GT与挂上anchor的IoU分布- 模型训练 - [vedaseg](https://github.com/Media-Smart/vedaseg) - semantic segmentation - [vedastr](https://github.com/Media-Smart/vedastr) - scene text recognition - [vedacls](https://github.com/Media-Smart/vedacls) - classification - [vedadet](https://github.com/Media-Smart/vedadet) - object detection - 应用部署 - [volksdep](https://github.com/Media-Smart/volksdep) - increase efficiency and decrease latency - convert PyTorch,ONNX model to TensorRT engine - [flexinfer](https://github.com/Media-Smart/flexinfer) -> Python front end SDK based on TensorRT engine - classification - semantic segmentation - scene text recognition - object detection - [cheetahinfer](https://github.com/Media-Smart/cheetahinfer) -> C++ front end SDK based on TensorRT engine - classification - semantic segmentation - object detection- 学习资源 - [学习框架]

(https://github.com/mileistone/study_resources/tree/master/modeling/learning_framework) - 知识点 - 相关课程与书籍 - 基础 - [工程](https://github.com/mileistone/study_resources/tree/master/engineering) - 编程语言 - Python - C++ - 软件工程 - 设计模式 - 操作系统 - Linux - Bash - Vim - 编译工具链 - [模型](https://github.com/mileistone/study_resources/tree/master/modeling) - 内容 - 机器学习 - 深度学习 - 计算机视觉 - 形式 - 课程 - 书籍 - 论文 - [算法](https://github.com/mileistone/study_resources/tree/master/modeling/optimization_and_generalization) - 凸优化 - 数值优化

责任编辑:xj

原文标题:CVChain:一条用视觉竞赛和项目经验打磨出的计算机视觉完整工具链

文章出处:【微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CV
    CV
    +关注

    关注

    0

    文章

    53

    浏览量

    16859
  • 计算机视觉
    +关注

    关注

    8

    文章

    1698

    浏览量

    45980

原文标题:CVChain:一条用视觉竞赛和项目经验打磨出的计算机视觉完整工具链

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    计算机视觉有哪些优缺点

    计算机视觉作为人工智能领域的重要分支,旨在使计算机能够像人类样理解和解释图像和视频中的信息
    的头像 发表于 08-14 09:49 925次阅读

    计算机视觉技术的AI算法模型

    计算机视觉技术作为人工智能领域的重要分支,旨在使计算机能够像人类样理解和解释图像及视频中的
    的头像 发表于 07-24 12:46 805次阅读

    机器视觉计算机视觉有什么区别

    机器视觉计算机视觉是两密切相关但又有所区别的概念。 、定义 机器视觉 机器
    的头像 发表于 07-16 10:23 520次阅读

    计算机视觉的五大技术

    计算机视觉作为深度学习领域最热门的研究方向之,其技术涵盖了多个方面,为人工智能的发展开拓了广阔的道路。以下是对计算机视觉五大技术的详细解析
    的头像 发表于 07-10 18:26 1331次阅读

    计算机视觉的工作原理和应用

    计算机视觉(Computer Vision,简称CV)是门跨学科的研究领域,它利用计算机和数学算法来模拟人类视觉系统对图像和视频进行识别、
    的头像 发表于 07-10 18:24 1910次阅读

    计算机视觉与人工智能的关系是什么

    、交流等方面。计算机视觉与人工智能之间存在着密切的联系,计算机视觉是人工智能的重要分支,也是
    的头像 发表于 07-09 09:25 621次阅读

    计算机视觉与智能感知是干嘛的

    感知(Intelligent Perception)则是计算机视觉分支,它强调计算机在处理视觉
    的头像 发表于 07-09 09:23 917次阅读

    计算机视觉和机器视觉区别在哪

    计算机视觉和机器视觉是两密切相关但又有明显区别的领域。 、定义 计算机
    的头像 发表于 07-09 09:22 446次阅读

    计算机视觉和图像处理的区别和联系

    计算机视觉和图像处理是两密切相关但又有明显区别的领域。 1. 基本概念 1.1 计算机视觉 计算机
    的头像 发表于 07-09 09:16 1282次阅读

    计算机视觉属于人工智能吗

    属于,计算机视觉是人工智能领域的重要分支。 引言 计算机视觉
    的头像 发表于 07-09 09:11 1294次阅读

    深度学习在计算机视觉领域的应用

    随着人工智能技术的飞速发展,深度学习作为其中的核心技术之,已经在计算机视觉领域取得了显著的成果。计算机视觉,作为
    的头像 发表于 07-01 11:38 781次阅读

    机器视觉计算机视觉的区别

    在人工智能和自动化技术的快速发展中,机器视觉(Machine Vision, MV)和计算机视觉(Computer Vision, CV)作为两重要的分支领域,都扮演着至关重要的角色
    的头像 发表于 06-06 17:24 1321次阅读

    计算机视觉的主要研究方向

    计算机视觉(Computer Vision, CV)作为人工智能领域的重要分支,致力于使计算机能够像人眼
    的头像 发表于 06-06 17:17 951次阅读

    本源超导量子计算机自主制造11类产品系列之九: 中国自主量子计算编程生态工具

    本源超导量子计算机自主制造由11部分组成,该制造生产的中国自主超导量子计算机已向中国用户交付多台,本源基于该制造
    的头像 发表于 05-30 08:22 377次阅读
    本源超导量子<b class='flag-5'>计算机</b>自主制造<b class='flag-5'>链</b>11类产品系列之九: 中国自主量子<b class='flag-5'>计算</b>编程生态<b class='flag-5'>工具</b><b class='flag-5'>链</b>

    计算机视觉的十大算法

    视觉技术的发展起到了重要的推动作用。、图像分割算法图像分割算法是计算机视觉领域的基础算法之,它的主要任务是将图像分割成不同的区域或对象。
    的头像 发表于 02-19 13:26 1236次阅读
    <b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>的十大算法