当前位置:首页 > 科技  > 软件

基于 Python 和 HuggingFace Transformers 的目标检测

来源: 责编: 时间:2024-07-05 09:07:44 236观看
导读YOLO!如果你对机器学习感兴趣,这个术语一定不陌生。确实,You Only Look Once已经成为过去几年中目标检测的默认方法之一。受到卷积神经网络取得的进展推动,许多版本的目标检测方法已经被创建。然而,近年来,一个竞争对手出现

YOLO!如果你对机器学习感兴趣,这个术语一定不陌生。确实,You Only Look Once已经成为过去几年中目标检测的默认方法之一。受到卷积神经网络取得的进展推动,许多版本的目标检测方法已经被创建。然而,近年来,一个竞争对手出现在了视野中——那就是在计算机视觉中使用基于Transformer的模型。更具体地说,是使用Transformer进行目标检测。7is28资讯网——每日最新资讯28at.com

7is28资讯网——每日最新资讯28at.com

在今天的教程中,你将了解到这种类型的Transformer模型。你还将学会使用Python、一个默认的Transformer模型和HuggingFace Transformers库创建自己的目标检测流程。本文将按照下列步骤讲解:7is28资讯网——每日最新资讯28at.com

  • 了解目标检测可以用来做什么
  • 了解当Transformer用于目标检测时它们是如何工作的
  • 已经使用Python和HuggingFace Transformers实现了基于Transformer模型的(图像)目标检测流程

7is28资讯网——每日最新资讯28at.com

7is28资讯网——每日最新资讯28at.com

什么是目标检测?

环顾四周,很可能你会看到很多东西——可能是一台电脑显示器、一个键盘和鼠标,或者当你在移动浏览器中浏览时,是一部智能手机。这些都是物体,是特定类别的实例。例如,在下面的图像中,我们看到一个人类类别的实例。我们还看到了许多瓶子类别的实例。虽然类别是蓝图,但物体是真实存在的,具有许多独特的特征,同时因为共享的特征而属于类别的成员。7is28资讯网——每日最新资讯28at.com

7is28资讯网——每日最新资讯28at.com

在图片和视频中,我们看到了许多这样的物体。例如,当你拍摄交通视频时,很可能会看到许多行人、汽车、自行车等实例。知道它们在图像中存在是非常有益的。为什么呢?因为你可以计数它们,举一个例子。这可以让你对社区的拥挤程度有所了解。另一个例子是在繁忙地区检测到一个停车位,让你可以停车。7is28资讯网——每日最新资讯28at.com

然后,我们将数据分配给一些变量,并遍历每个结果,绘制边界框。

  • 最后,我们将图像保存到street_bboxes.jpg中。
  • # Open the imagewith Image.open("street.jpg") as im: # Perform object detection bounding_boxes = object_detector(im) # Iteration elements num_boxes = len(bounding_boxes) index = 0 # Draw bounding box for each result for bounding_box in bounding_boxes:  # Get actual box  box = bounding_box["box"]  # Draw the bounding box  im = draw_bounding_box(im, bounding_box["score"], bounding_box["label"],/   box["xmin"], box["ymin"], box["xmax"], box["ymax"], index, num_boxes)  # Increase index by one  index += 1 # Save image im.save("street_bboxes.jpg") # Done print("Done!")

    7is28资讯网——每日最新资讯28at.com

    使用不同的模型/使用自己的模型进行目标检测

    如果你创建了自己的模型,或者想要使用不同的模型,那么很容易使用它来代替基于ResNet-50的DeTr Transformer。这将需要你添加以下导入:7is28资讯网——每日最新资讯28at.com

    from transformers import DetrFeatureExtractor, DetrForObjectDetection

    然后,你可以初始化特征提取器和模型,并使用它们初始化object_detector,而不是默认的一个。例如,如果你想将ResNet-101用作你的骨干,那么你可以这样做:7is28资讯网——每日最新资讯28at.com

    # Initialize another model and feature extractorfeature_extractor = DetrFeatureExtractor.from_pretrained('facebook/detr-resnet-101')model = DetrForObjectDetection.from_pretrained('facebook/detr-resnet-101')# Initialize the object detection pipelineobject_detector = pipeline("object-detection", model = model, feature_extractor = feature_extractor)

    7is28资讯网——每日最新资讯28at.com

    结果

    以下是我们在输入图像上运行目标检测流程后得到的结果:7is28资讯网——每日最新资讯28at.com

    7is28资讯网——每日最新资讯28at.com

    7is28资讯网——每日最新资讯28at.com

    当放大时:7is28资讯网——每日最新资讯28at.com

    7is28资讯网——每日最新资讯28at.com

    本文链接:http://www.28at.com/showinfo-26-98871-0.html基于 Python 和 HuggingFace Transformers 的目标检测

    声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

    上一篇: 你应该知道的主要软件设计原则

    下一篇: ESLint排坑指南:解决开发中常见的代码规范错误

    标签:
    • 热门焦点
    • CSS单标签实现转转logo

      转转品牌升级后更新了全新的Logo,今天我们用纯CSS来实现转转的新Logo,为了有一定的挑战性,这里我们只使用一个标签实现,将最大化的使用CSS能力完成Logo的绘制与动画效果。新logo
    • 零售大模型“干中学”,攀爬数字化珠峰

      文/侯煜编辑/cc来源/华尔街科技眼对于绝大多数登山爱好者而言,攀爬珠穆朗玛峰可谓终极目标。攀登珠峰的商业路线有两条,一是尼泊尔境内的南坡路线,一是中国境内的北坡路线。相
    • 2023年,我眼中的字节跳动

      此时此刻(2023年7月),字节跳动从未上市,也从未公布过任何官方的上市计划;但是这并不妨碍它成为中国最受关注的互联网公司之一。从2016-17年的抖音强势崛起,到2018年的“头腾
    • 拼多多APP上线本地生活入口,群雄逐鹿万亿市场

      Tech星球(微信ID:tech618)文 | 陈桥辉 Tech星球独家获悉,拼多多在其APP内上线了“本地生活”入口,位置较深,位于首页的“充值中心”内,目前主要售卖美食相关的
    • 消息称小米汽车开始筛选交付中心:需至少120个车位

      IT之家 7 月 7 日消息,日前,有微博简介为“汽车行业从业者、长三角一体化拥护者”的微博用户 @长三角行健者 发文表示,据经销商集团反馈,小米汽车目前
    • 三星显示已开始为AR设备研发硅基LED微显示屏

      7月18日消息,据外媒报道,随着苹果首款头显产品Vision Pro在6月份正式推出,AR/VR/MR等头显产品也就将成为各大公司下一个重要的竞争领域,对显示屏这一关
    • Android 14发布:首批适配机型公布

      5月11日消息,谷歌在今天凌晨举行了I/O大会,本次发布会谷歌带来了自家的AI语言模型PaLM 2、谷歌Pixel Fold折叠屏、谷歌Pixel 7a手机,同时发布了Androi
    • 联想小新Pad Pro 12.6将要推出,搭载高通骁龙 870 处理器

      联想小新Pad Pro 12.6将于秋季新品会上推出,官方按照惯例直接在发布会前给出了机型的所有参数。联想小新 Pad Pro 12.6 将搭载高通骁龙 870 处理器,重量为 5
    • 三翼鸟智能家居亮相电博会,让用户体验更真实

      2021电博会在青岛国际会展中心开幕中,三翼鸟直接把“家”搬到了现场,成为了展会的一大看点。这也是三翼鸟继9月9日发布了行业首个一站式定制智慧家平台后的
    Top