作者 |DR. VAIBHAV KUMAR
编译 |VK
起源 |Analytics In Diamag
指标检测技术是当今计算机视觉畛域的发展趋势。在场景图像和视频中,有许多办法被用来检测物体。在资源和执行工夫方面,每种技术都有本人的劣势和局限性。检测视频中的物体也须要大量的技术常识和资源。
因而,人们始终在寻找一种简略、疾速的指标检测办法。在本文中,咱们将演示如何检测视频中看到的对象,只需 5 个步骤。
咱们将在本工作中应用 pixellib 库,该库应用实例宰割检测对象。咱们还将应用预训练 Mask R-CNN 模型来辨认视频中看到的物体。
在这个实现中,咱们将检测交通视频中的车辆对象。
实例宰割
实例宰割是计算机视觉中的一种技术,它利用图像宰割的办法进行指标检测。它在像素级辨认图像或视频中存在的每个对象实例。
在图像宰割中,视觉输出被宰割成若干段,通过造成像素汇合来示意对象或对象的一部分。实例宰割辨认图像中每个对象的每个实例,而不是像语义宰割那样对每个像素进行分类。
Mask R-CNN
Mask R-CNN 是由 Kaiming He 等人在 Facebook 人工智能研究所提出的深层神经网络的变体。该模型用于解决计算机视觉中的对象实例宰割问题。
它检测图像中的对象,同时为每个实例生成一个高质量的宰割掩码。它是 Faster R-CNN 的一个扩大,它减少了一个预测指标掩码的分支,与现有的边界盒辨认分支并行。
上面给出了用于实例宰割的 Mask R-CNN 框架。
实现
当初,咱们将探讨在视频中检测物体的步骤。
1. 装置库和依赖项
在第一步中,咱们须要装置 pixellib 库及其依赖项。
!pip install pixellib
2. 加载事后训练的 Mask RCNN 权重
因为咱们将应用 Mask R-CNN 模型来检测指标,咱们将下载其预训练的权重。
!wget --quiet https://github.com/matterport/Mask_RCNN/releases/download/v2.0/mask_rcnn_coco.h5
3. 导入库
当初,咱们将导入已装置的 pixellib 库。咱们还将导入 instance_segmentation 类,因为咱们将应用实例宰割办法检测对象。
import pixellib
from pixellib.instance import instance_segmentation
4. 实例化实例宰割模型并加载 MASK R-CNN 权重
在这一步中,咱们将实例化 pixellib 提供的 instance_segmentation 类,并应用其预训练的权重加载 Mask R-CNN 模型。
segment_video = instance_segmentation()
segment_video.load_model("mask_rcnn_coco.h5")
5. 检测物体
在这一步中,咱们将通过在视频中 MASK R-CNN 来解决指标检测工作。咱们会用随机应用一段交通视频
视频:https://analyticsindiamag.com…
在这种办法中,咱们设置每秒帧数,即视频输入每秒的帧数。
segment_video.process_video("traffic_vid2.mp4", show_bboxes = True, frames_per_second= 15, output_video_name="object_detect.mp4")
最初,咱们将在工作目录中取得输入视频。这个过程的工夫取决于视频的长度和大小。你应该应用 GPU 来放慢处理速度。对于下面的交通视频,后果为
视频:https://analyticsindiamag.com…
你能够定义一个函数来从 YouTube 获取视频并将其间接传递给下面的函数。
因而,利用以上步骤,咱们能够探讨一种非常简单的办法来实现视频中的指标检测工作。刚入门计算机视觉的能够用这种办法检测物体。
原文链接:https://analyticsindiamag.com…
欢送关注磐创 AI 博客站:
http://panchuang.net/
sklearn 机器学习中文官网文档:
http://sklearn123.com/
欢送关注磐创博客资源汇总站:
http://docs.panchuang.net/