【yolov8语义分割】跑通:下载yolov8+预测图片+预测视频

2024-06-23 00:52

本文主要是介绍【yolov8语义分割】跑通:下载yolov8+预测图片+预测视频,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、下载yolov8到autodl上

git clone https://github.com/ultralytics/ultralytics

9897843710a64b2e8a30c38afdda206d.png

下载到Yolov8文件夹下面

另外:现在yolov8支持像包一样导入,pip install就可以
 

2、yolov8 语义分割文档

23f8251f90db4bf9b86911d4ec826da2.png

看官方文档:主页 -Ultralytics YOLO 文档

还能切换成中文版本,真友好。

看以下yolov8语义分割的文档:Segment - Ultralytics YOLO Docs

YOLOv8 Segment 模型使用 -seg 后缀,比如 yolov8n-seg.pt ,然后官方是在 COCO数据集上进行预训练。

不同yolov8分割模型的参数:

d4c4b085ea194711a2dcf1daf0993627.png

用pycharm连接远程服务器:

1cf4e92722c346458e0d1afb569ee5de.png

然后,我根据官方提示,在根目录下面都没有这个模块,查了下,说yolov8都没有requiment.txt的文档,他是把所有东西都放在ultralytics包下面,所以直接pip install ultralytics,那么,在下这个包之前,先在autodl上面,新建一个虚拟环境,把项目的包直接下载在这里面,不然就会出现如下提示:

5f92ec5fbc3842df9a2d49987807487f.png

223325e2cb444238bbc46f7b79d419eb.png

 

创建虚拟环境,名字是yolov8

root@autodl-container-97b611a952-679739f5:~# python -m venv yolov8
root@autodl-container-97b611a952-679739f5:~# source yolov8/bin/activate
(yolov8) root@autodl-container-97b611a952-679739f5:~# pip list
7263c2fc762346f5a3fb03956da53234.png

然后提示我pip要更新了,根据提示去更新先:

2fc835287e574f598ba569f5fdd19654.png更新好了,现在也在yolov8虚拟环境下了。

我在autodl上,把yolov8下载在Yolov8文件夹下面的1:

b030c47c93b144deaea7378be4f743cc.png

所以,我先进入这个文件夹下

(yolov8) root@autodl-container-97b611a952-679739f5:~# cd Yolov8
(yolov8) root@autodl-container-97b611a952-679739f5:~/Yolov8# cd ultralytics
 

好了,开始吧!

1、先下载:pip install ultralytics,这一步就相当于之前安装requirements,现在是都放在ultralytics下面了。

36565da05a2f47028ee1e2e88de9b6cf.png

2、载入刚刚下载的ultralytics

如果是在终端打开的,记得,先进入python

import ultralytics

import torch

torch.cuda.is_available()  #检查torch是否可用,返回true才意味着可以用torch,在gpu打开

 

先直接进行预测

中间下载torch的时候突然跳出去了,然后重新进入yolov8的虚拟环境,一定注意是root目录下的,也就是说,在哪个目录下创建的虚拟环境,就从哪里进入,

source yolov8/bin/activate

bd98266afa304e32984fd343b99b299c.png

然后conda list 看看有没有安装好yolov8

7014824ee25f4e6a8ec7b1012b9c8199.png

可以看到安装了。

现在先用官方给的图片,预测一张图的语义分割,看看什么效果:

yolo segment predict model=yolov8n-seg.pt source='https://ultralytics.com/images/bus.jpg'

30d70ca06b74411eb7f82342123b2e78.png

可以看到,她是先下载了yolov8n-seg.pt模型,存在根目录下,然后,直接下载网站的图片,对bus这个图进行预测。注意存放位置。

cbeb2273d4df440fb0be80f99de2f586.png

她还给出了预测的结果,说有4个人一个bus,还有191.2ms的预测时间

然后它说,图片存在runs下面的segment下面的predict了

 

e7d5a23c026f4eae9ac1f3f819dc5f0d.png

 

那现在用自己的图片试一下:

模型就不变了,换个图,注意这个目录一定是对应autodl上的目录分布,

yolo segment predict model=yolov8n-seg.pt source='./gettyimages.jpg'

3fcce1bc0a004604a050dae904858830.png

6c2d96d09ccd4317b1d4844e58ab2ac4.png

结果是这样的。

yolov8还能实时预测摄像头:看一看(运行不了)

yolo segment predict model=yolov8n-seg.pt source=0

 

从yotube下载视频看看:(报错)

先下载包

sudo apt update sudo apt install youtube-dl

pip3 install --upgrade youtube-dl

 youtube-dl https://www.youtube.com/watch?v=Fw3MdwjPyHA -f bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4
ca7e540df6a5443eb623f040024eefa7.png

算了,直接看看本地视频mp4吧:

6e5a8d646df141cca5d26d19cccc40d7.png

avi格式怎么看视频?

48c5de665948471cb6f5474ebb31d3dc.png

截取一帧:

34e263d2a2fd462f9c0821e6e0366848.png

 

这篇关于【yolov8语义分割】跑通:下载yolov8+预测图片+预测视频的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085877

相关文章

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

Java实现文件图片的预览和下载功能

《Java实现文件图片的预览和下载功能》这篇文章主要为大家详细介绍了如何使用Java实现文件图片的预览和下载功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... Java实现文件(图片)的预览和下载 @ApiOperation("访问文件") @GetMapping("

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

Python下载Pandas包的步骤

《Python下载Pandas包的步骤》:本文主要介绍Python下载Pandas包的步骤,在python中安装pandas库,我采取的方法是用PIP的方法在Python目标位置进行安装,本文给大... 目录安装步骤1、首先找到我们安装python的目录2、使用命令行到Python安装目录下3、我们回到Py

C++字符串提取和分割的多种方法

《C++字符串提取和分割的多种方法》在C++编程中,字符串处理是一个常见的任务,尤其是在需要从字符串中提取特定数据时,本文将详细探讨如何使用C++标准库中的工具来提取和分割字符串,并分析不同方法的适用... 目录1. 字符串提取的基本方法1.1 使用 std::istringstream 和 >> 操作符示

基于Python开发批量提取Excel图片的小工具

《基于Python开发批量提取Excel图片的小工具》这篇文章主要为大家详细介绍了如何使用Python中的openpyxl库开发一个小工具,可以实现批量提取Excel图片,有需要的小伙伴可以参考一下... 目前有一个需求,就是批量读取当前目录下所有文件夹里的Excel文件,去获取出Excel文件中的图片,并

Java实现数据库图片上传与存储功能

《Java实现数据库图片上传与存储功能》在现代的Web开发中,上传图片并将其存储在数据库中是常见的需求之一,本文将介绍如何通过Java实现图片上传,存储到数据库的完整过程,希望对大家有所帮助... 目录1. 项目结构2. 数据库表设计3. 实现图片上传功能3.1 文件上传控制器3.2 图片上传服务4. 实现