Mask_RCNN

机器人懂点「常识」后,找东西方便多了:CMU打造新型语义导航AI机器人

拥有回忆 提交于 2020-08-19 23:03:13
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 想让机器人像人一样思考,似乎一直是个难题。 例如,让智(zhi)能(zhang)机器人去客厅拿个遥控器,结果看到机器人在厨房翻箱倒柜… 好消息是,这个问题现在被CMU解决了。 CMU研究团队打造出了一款拥有人类「常识」的导航机器人,让找东西变得更方便。 这款机器人能利用AI判断家中最可能找到目标物体的地点,从而尽快找到它。 例如,让机器人去拿放在「植物」旁边的遥控器,机器人几乎立即检测出了「植物」盆栽所在的位置,从而检测到遥控器的存在。 项目已被ECCV 2020收录,并获得了居住地目标导航挑战赛的第一名。 一起来看看实现的过程。 让机器人「学点常识」 事实上,以往大部分采用机器学习训练的语义导航机器人,找东西的效果都不太好。 相比于人类潜意识中形成的常识,机器人往往有点“死脑筋”,它们更倾向于去记住目标物体的位置。 但物体所处的场景往往非常复杂,而且彼此间差异很大(正所谓每个人的家,乱得各有章法),如果单纯以大量不同场景对系统进行训练,模型泛化能力都不太好。 于是,相比于用更多的样本对系统进行训练,这次研究者们换了一种思路: 采用半监督学习的方式,使用一种名为semantic curiosity(语义好奇心)的奖励机制对系统进行训练。 训练的核心目的,是让系统基于对语义的

Detectron2 入门 | 二

雨燕双飞 提交于 2020-08-15 04:20:41
作者|facebookresearch 编译|Flin 来源|Github Detectron2入门 本文档简要介绍了detectron2中内置命令行工具的用法。 有关涉及使用API​​进行实际编码的教程,请参阅我们的Colab Notebook( https://colab.research.google.com/drive/16jcaJoc6bCFAQ96jDe2HwtXj7BMD_-m5 ) ,其中涵盖了如何对现有模型进行推断,以及如何在自定义数据集上训练内置模型。 有关更高级的教程,请参阅我们的文档( https://detectron2.readthedocs.io/tutorials/extend.html )。 预训练模型的推理演示 从模型Zoo( https://github.com/facebookresearch/detectron2/blob/master/MODEL_ZOO.md ) 中选择一个模型及其配置文件 ,例如 mask_rcnn_R_50_FPN_3x.yaml 。 我们提供 demo.py 能够运行内置标准模型的工具。使用以下命令运行它: python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml \ --input

5个步骤实现目标检测

我与影子孤独终老i 提交于 2020-08-14 07:06:59
作者|DR. VAIBHAV KUMAR 编译|VK 来源|Analytics In Diamag 目标检测技术是当今计算机视觉领域的发展趋势。在场景图像和视频中,有许多方法被用来检测物体。在资源和执行时间方面,每种技术都有自己的优势和局限性。检测视频中的物体也需要大量的技术知识和资源。 因此,人们一直在寻找一种简单、快速的目标检测方法。在本文中,我们将演示如何检测视频中看到的对象,只需5个步骤。 我们将在本任务中使用pixellib库,该库使用实例分割检测对象。我们还将使用预训练Mask R-CNN模型来识别视频中看到的物体。 在这个实现中,我们将检测交通视频中的车辆对象。 实例分割 实例分割是计算机视觉中的一种技术,它利用图像分割的方法进行目标检测。它在像素级识别图像或视频中存在的每个对象实例。 在图像分割中,视觉输入被分割成若干段,通过形成像素集合来表示对象或对象的一部分。实例分割识别图像中每个对象的每个实例,而不是像语义分割那样对每个像素进行分类。 Mask R-CNN Mask R-CNN是由Kaiming He等人在Facebook人工智能研究所提出的深层神经网络的变体。该模型用于解决计算机视觉中的对象实例分割问题。 它检测图像中的对象,同时为每个实例生成一个高质量的分割掩码。它是Faster R-CNN的一个扩展,它增加了一个预测目标掩码的分支

使用pytorch训练自己的Faster-RCNN目标检测模型

谁都会走 提交于 2020-08-13 18:36:01
参考了Mask-RCNN实例分割模型的训练教程: pytorch官方的Mask-RCNN实例分割模型训练教程: TORCHVISION OBJECT DETECTION FINETUNING TUTORIAL 官方Mask-RCNN训练教程的中文翻译: 手把手教你训练自己的Mask R-CNN图像实例分割模型(PyTorch官方教程) 在Mask-RCNN实例分割模型训练的基础上稍作修改即可实现Faster-RCNN目标检测模型的训练 相关网页: torchvision自带的图像分类、语义分割、目标检测、实例分割、关键点检测、视频分类模型: TORCHVISION.MODELS torchvision Github项目地址: https://github.com/pytorch/vision 1. 准备工作 除了需要安装pytorch和torchvision外,还需要安装COCO的API pycocotools windows系统安装pycocotools的方法: Windows下安装pycocotools 导入相关包和模块: import torch import os import numpy as np import cv2 import matplotlib.pyplot as plt from torchvision import datasets, transforms

ICML2020 | Prune or Not to Prune?与其剪枝丢掉无用通道,不如将其激活?

吃可爱长大的小学妹 提交于 2020-08-11 22:17:49
      本文介绍的是IC ML 2020 论文《Channel Equilibrium Networks for Learning Deep Representation》,论文作者 来自香港大学罗平组。   作者 | 邵文琪、罗平   编辑 | 丛 末      论文地址:https://arxiv.org/pdf/2003.00214.pdf    1    前言   这篇文章主要介绍我们ICML 2020的一个工作——Channel Equilibrium Networks for Learning Deep Representation。卷积神经网络(CNN)中最重要的一个概念就是通道(Channel),与之相关联的基本结构包括卷积层、归一化层(如BN等)。比如卷积中的一个kernel通常对应着一个输出通道,而常用的BN就是在每一个通道内计算相应的统计量。   大量研究表明,网络中有效通道的数量与CNN的表达能力关系密切。比如,WideResNet通过增加通道数量也就是网络宽度来提升CNN的表达能力,而常用的模型剪枝方法(Prunning)也发现对一个训练好的网络,删去一些不重要的通道并不会对网络性能产生太大的影响。   在这篇文章中,我们把这些不重要的通道称之为“抑制通道”。抑制通道在特征表示中几乎没有作用,因此网络剪枝即去除抑制通道。与网络压缩不同

Detectron2 基准测试 | 十二

谁说胖子不能爱 提交于 2020-08-11 06:00:30
作者|facebookresearch 编译|Flin 来源|Github 基准测试 在这里,我们以一些其他流行的开源Mask R-CNN实现为基准,对Detectron2中Mask R-CNN的训练速度进行了基准测试。 设置 硬件:8个带有NVLink的NVIDIA V100。 软件: Python 3.7, CUDA 10.0, cuDNN 7.6.4, PyTorch 1.3.0 (链接( https://download.pytorch.org/whl/nightly/cu100/torch-1.3.0%2Bcu100-cp37-cp37m-linux_x86_64.whl )), TensorFlow 1.15.0rc2, Keras 2.2.5, MxNet 1.6.0b20190820. 模型:端到端R-50-FPN Mask-RCNN模型,使用与Detectron基线配置( https://github.com/facebookresearch/Detectron/blob/master/configs/12_2017_baselines/e2e_mask_rcnn_R-50-FPN_1x.yaml )相同的超参数 。 指标:我们使用100-500次迭代中的平均吞吐量来跳过GPU预热时间。请注意,对于R-CNN样式的模型,模型的吞吐量通常会在训练期间发生变化

如何用Amazon SageMaker 做分布式 TensorFlow 训练?(千元亚马逊羊毛可薅)

人走茶凉 提交于 2020-08-07 08:07:08
机器之心转载,来源:AWS官方博客,作者:Ajay Vohra。 TensorFlow 是广泛被用于开发大型深度神经网络 (DNN) 的开放源机器学习 (ML) 库,此类 DNN 需要分布式训练,并且在多个主机上使用多个 GPU。Amazon SageMaker 是一项托管服务,可通过主动学习、超参数优化、模型分布式训练、监控训练进展,部署培训模型作为自动扩展的 RESTful 服务,以及对并发 ML 实验进行集中式管理,从标签数据开始简化 ML 工作流。 本文将重点讨论使用 Amazon SageMaker 进行分布式 TensorFlow 训练。 概念概述 尽管本文中的许多分布式训练概念通常适用于多种类型的 TensorFlow 模型,但本文着重要介绍的是在 Common Object in Context (COCO) 2017 数据集上对 Mask R-CNN 模型进行的分布式 TensorFlow 训练。 模型 Mask R-CNN 模型用于对象实例分割,其中模型生成像素级掩膜(Sigmoid 二进制分类)和以对象类别(SoftMax 分类)注释的目标框(Smooth L1 回归)描绘图像中的每个对象实例。Mask R-CNN 的一些常见用例包括:自动驾驶汽车的感知、表面缺陷检测和地理空间图像分析。 文中选择 Mask R-CNN 模型的关键原因有三个: 大型数据集上的

CV之IS:利用pixellib库基于mask_rcnn_coco模型对《庆余年》片段实现实例分割简单代码全实现

萝らか妹 提交于 2020-08-07 07:24:39
CV之IS:利用pixellib库基于mask_rcnn_coco模型对《庆余年》片段实现实例分割简单代码全实现 目录 利用pixellib库的instance_segmentation函数实现图像的实例分割 输出结果 代码实现 利用pixellib库的instance_segmentation函数实现图像的实例分割 输出结果 代码实现 #2、实例分割 from pixellib.instance import instance_segmentation segment_image = instance_segmentation() segment_image.load_model('F:/File_Python/Resources/weights_files/mask_rcnn_coco.h5') segment_image.segmentImage('F:/File_Python/Resources/image/detection12.jpg', output_image_name = 'F:/File_Python/Resources/image/detection12_image_new.jpg') 来源: oschina 链接: https://my.oschina.net/u/4407543/blog/4296012

宜信OCR技术探索与实践|直播速记

随声附和 提交于 2020-08-06 21:10:42
宜信OCR技术探索与实践​|直播速记 ​ 宜信OCR技术探索与实践|完整视频回放 ​ ​ ​分享实录 一、OCR概述 1.1 OCR技术演进 传统图像,冈萨雷斯的图像处理。 信号处理、频域分析以及各类算法:SIFT、HOG、HOUGH、Harris、Canny…都很赞。 从2016年以后业界基本上都已经转向深度了,因为效果真的特别好。 1.2 OCR技术商业服务 身份证卡证类相对容易些,但是要做到复杂场景的,也不是那么容易。 发票、业务单据相对复杂,除了识别,更重要的是版面分析。 最近表格识别比较火,各家都在努力实现,微软的开放tablebank数据集 移动端backboneMobileNet,或者是tesseract+opencv 二、我们的业务场景 2.1 业务需求 满足业务是第一需要,不同于大厂,对外服务API,要求大并发那么强,多样性品类完备,我们更强调单品要做到尽量达到业务要求,更强调定制化,可以分布走,业务上可以给反馈不断改进。 2.2 识别过程中需要解决的问题 三、OCR算法详解 3.1 算法概述——分享原则 大家一定要自己弄细节,读代码、甚至自己动手撸,自己训练,调参,排错,才能有真正的体会和理解,只讲我认为每个算法里面不太好理解,重点,以及容易忽略的点,跟同行一起交流,沟通。 一个模型,要全面深入了解,需要: 目标、目的、意义是啥? 网络结构啥样? loss是啥?

5行代码,快速实现图像分割,代码逐行详解,手把手教你处理图像 | 开源

僤鯓⒐⒋嵵緔 提交于 2020-07-24 19:09:47
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 图像分割,作为计算机视觉的基础,是图像理解的重要组成部分,也是图像处理的难点之一。 那么,如何优雅且体面的图像分割? 5行代码、分分钟实现的库——PixelLib,了解一下。 当然,如此好用的项目,开源是必须的。 为什么要用到图像分割? 虽然计算机视觉研究工作者,会经常接触图像分割的问题,但是我们还是需要对其做下“赘述”(方便初学者)。 我们都知道每个图像都是有一组像素值组成。简单来说,图像分割就是在像素级上,对图像进行分类的任务。 图像分割中使用的一些“独门秘技”,使它可以处理一些关键的计算机视觉任务。主要分为2类: 语义分割: 就是把图像中每个像素赋予一个类别标签,用不同的颜色来表示。 实例分割: 它不需要对每个像素进行标记,它只需要找到感兴趣物体的边缘轮廓就行。 它的身影也经常会出现在比较重要的场景中: 无人驾驶汽车视觉系统,可以有效的理解道路场景。 医疗图像分割,可以帮助医生进行诊断测试。 卫星图像分析,等等。 所以,图像分割技术的应用还是非常重要的。 接下来,我们就直奔主题,开始了解一下PixelLib,这个神奇又好用的库。 快速安装PixelLib PixelLib这个库可以非常简单的实现图像分割——5行代码就可以实现语义分割和实例分割。 老规矩,先介绍一下安装环境