YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。

原文链接,YOLOv8从图片标注到跑模型(CPU) - 哔哩哔哩 

全程需要注意的地方:

1.所有软件不要安装在有中文路径的地方,以免出现意想不到的问题。

2.所有安装过程中提示是否安装,有y/n选择的,我们都要输入y并且回车

软件对硬盘无要求,机械硬盘或者固态硬盘均可。

第一步

我们需要安装anaconda,双击打开安装程序。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第1张图片

安装路径不要有中文。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第2张图片

我们勾选所有选项,然后点击install安装。后续完成安装即可。

第二步

我们安装pycharm。双击安装程序,同样请不要有中文路径。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第3张图片

我们勾选全部,点击next下一步,安装完后程序会提示重启,我们重新启动下计算机。

第三步

我们将ultralytics-main.zip(这个文件夹就是yolov8的源代码)解压到容易找到的地方,稍后我们需要通过pycharm打开这个文件夹,解压完后,我们继续解压labelimg压缩包,可以解压到ultralytics-main文件夹里面。即,将两个项目合并成一个文件夹,方便以后使用。

类似下面图片展示这样。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第4张图片

第四步

我们打开pycharm,图片如下所示,首次打开需要勾选,然后点击continue继续。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第5张图片

我们点击open打开刚才解压的yolo源码路径。这个路径需要包含整个代码。如下面两张图。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第6张图片

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第7张图片

按照下面的图片1234顺序,我们可以设置将pycharm改成中文。改完后可能会需要重新启动下pycharm。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第8张图片

重新启动这个项目。

第五步

接下来我们设置编译器环境。按照下面图片的方向,我们设置使用anaconda,python版本我们统一选择3.8。然后点击确定。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第9张图片

 pycharm我们依次按照下面的图片123的顺序点击python软件包,+号,输入URL,这一步是为了设置国内的镜像服务器,让后面下载软件更方便一些。

下面是一些镜像源,需要一条一条的添加进去。名称随意,授权默认无。

http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/

http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

全部添加进去后点击应用,确定。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第10张图片

我们接下来打开pytorch.org这个网站,按图所示,选择stable-windows-codna-python-CPU

(由于大家的笔记本显卡有的人只有核显,有的人独立显卡是AMD,均不能使用英伟达的软件来跑机器学习。不过CPU不受这个限制。并且CPU版本安装更简单一些,缺点是CPU跑的时间会比GPU长很多,在我的笔记本上i5 9300H需要用RTX2060十倍的时间才能跑完。)

我们看到下面run this command 里面的 conda install pytorch torchvision torchaudio cpuonly -c pytorch 复制里面的命令。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第11张图片

上面复制的命令,我们在下图所示,终端里粘贴,并且回车。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第12张图片

我们耐心等待安装完毕即可。

我们再次回到pycharm主界面,会提示安装依赖包(其实一直都会提示,只不过这个时候我们才理会这个)。点击安装即可。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第13张图片

这里需要多等一会儿,如果安装卡主,可以退出pycharm重新打开会提示安装依赖包。重新点击即可。不过可能无法全部完成安装,会有一些包最终还是安装失败。我们使用下面的命令来安装。

Pip install ultralytics -i Simple Index

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第14张图片

这条命令执行完,pycharm就不会再提示缺乏依赖包了。

第六步

测试一下

我们继续在终端里输入命令,来运行下yolo的图像检测,看看是否真的成功了。命令如下。

yolo task=detect mode=predict model=yolov8n.pt conf=0.25 source='D:/program/ultralytics-main/ultralytics/assets/bus.jpg'

上面为一行命令,word限制无法一行显示完。其中bus.jpg需要替换成自己的文件路径,即红色路径需要替换成自己图片所在的路径这个ultralytics-main文件压缩包解压后都有。

执行后,我们看到会自动下载pt这个文件。并且开始进行图像检测。

下面图片中pycharm中红色框是图像检测后生成的路径,文件夹中我们找到后打开图片。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第15张图片

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第16张图片

图片如图所示,至此我们完整的安装完了yolo,并且可以成功运行。

下面我们来介绍安装labelimg,刚才我们已经把这个文件夹放在了ultralytics-main文件夹。

我们在pycharm中的终端,能看到当前输入命令的路径,这个路径我们需要修改到labelimg文件夹下的路径,需要一点windows命令。

cd 输入下一个文件夹的名字(中间有一个英文符号的空格)即可进入到下一个文件夹下面,cd..代表回到上一层目录。  C:代表进入c盘根目录

我们定位到labelimg文件夹中,使用命令dir,来查看所有文件,一定要确认有resources.qrc这个文件。然后执行下面的命令

Pyrcc5 -o resources.py resources.qrc

执行完后会生成resources.py,我们将这个文件复制一份到lib文件夹里面。

然后终端里继续执行下面三条命令

pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install PyQt5_tools -i Simple Index

全部安装后,我们找到labelimg.py双击,然后鼠标右键对着代码点击运行。能出现下面的界面代表成功安装。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第17张图片

出现这个界面,我们可以用来给图像打标签。

下面我们还差一个标签转换python程序,将这个convert_voc_to_yolo.py代码复制到我们的项目文件夹下,在pycharm中,鼠标右键运行即可。

这里有需要提示的地方代码中class name dic 和classes里面的名称是一一对应的,

具体命名需要根据labelimg中打标签时候起的名字来确定。

下面的图片中红框则代表了我们的需要转换的图片的位置。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第18张图片

下面再补充一点图像拆分,我们使用potplayer打开视频,会自动播放,我们点击停止,然后将进度条拖回0秒位置。然后鼠标右键如下面图片所示,设置完点击确定,然后点击播放器的播放按钮,图片就会自动拆分了。拆分后,我们只需要选效果好的图片保存到另一个位置为后面的打标签做准备即可(使用windows图片查看器可以快速查看,看到效果好的,可以复制出来,用windows画图来编辑,不修改图片内容,只裁剪图像)。具体处理,我们周六课上详细讲。

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第19张图片

YOLOv8部署,从图像到打标签,再到标签转换,最后机器学习。_第20张图片

上面的工作中,图像拆分完,打标签结束,标签转换完,我们就要运行机器学习命令了,之前上面只讲了推理。后面我们还需要使用自己的图像来让机器进行学习。

下面放一个示例命令,执行即可让机器去学习图片特征。

yolo task=detect mode=train model= yolov8n.yaml data=D:/program/ultralytics-main/datasets/data.yaml epochs=200 imgsz=640 resume=True workers=4

训练完成后会生成自己的模型。

你可能感兴趣的:(python,pycharm,开发语言)