⭐使用yolov10完成预训练模型测试!⭐

001

首先克隆仓库到本地:

git clone git@github.com:THU-MIG/yolov10.git

进入yolov10目录,使用Anaconda创建环境并安装所需依赖项

conda create -n yolov10 python=3.9
conda activate yolov10
pip install -r requirements.txt
pip install -e .

进入yolov10目录,跑一个demo试试实力,

python app.py

出现代码

(yolov10) ai@ai:~/YOLO/yolov10$ python app.py 
Will cache examples in '/home/ai/YOLO/yolov10/gradio_cached_examples/19' directory at first use. 


Running on local URL:  http://127.0.0.1:7860

To create a public link, set `share=True` in `launch()`.

直接崩溃,不学了,!!!


说着玩的,打开app.py,查看最后一行,查找gradio官方文档找到gradio_app.launch,一顿学习,打开app.py修改最后一行为

    gradio_app.launch(server_name='0.0.0.0',server_port=7860)

注意缩进,保存退出,再次运行python app.py从浏览器输入[你的服务器的局域网IP]:7860回车,能够得到界面如下
在这里插入图片描述
找一张图片测试一下,报错

FileNotFoundError: [Errno 2] No such file or directory: 'yolov10n.pt'

说明缺少yolov10n.pt权重,google直接搜索,得到地址下载:

https://github.com/jameslahm/yolov10/releases/download/v1.0/yolov10n.pt

将其放入根目录,再次运行报错如下:

  File "/home/ai/anaconda3/envs/yolov10/lib/python3.9/site-packages/huggingface_hub/file_download.py", line 1826, in _raise_on_head_call_error
    raise LocalEntryNotFoundError(
huggingface_hub.utils._errors.LocalEntryNotFoundError: An error happened while trying to locate the file on the Hub and we cannot find the requested files in the local cache. Please check your connection and try again or make sure your Internet connection is on.
^CKeyboard interruption in main thread... closing server.

说明我访问huggingface失败,由于服务器没有代理,所以我自己去huggingface的网站下载模型然后再传输到服务器上,这是yolov10n的预训练模型地址:
https://huggingface.co/jameslahm/yolov10n/tree/main
四个文件都下载下来,放到文件夹jameslahm/yolov10n下面(还原原来的结构),然后把jiameslahm文件夹整个放入yolov10的根目录下面,打开app.py,把第8行修改为:

    model = YOLOv10.from_pretrained('jameslahm/yolov10n')

注意缩进,保存退出。
再次运行

python app.py

在浏览器输入[你的服务器的局域网IP]:7860回车,然后放入图片检测,得到:
在这里插入图片描述
完成测试。


下次有空说说如何训练自己的数据集得出模型文件,如何部署自己的模型文件,嘿嘿~

1.1.1 进程是计算机中正在执行的程序的实例。线程是进程的执行单元,一个进程可以包含多个线程。它们之间的区别如下: - 进程拥有独立的内存空间,每个进程都有自己的地址空间,数据不共享;而线程共享进程的内存空间,可以访问相同的变量和数据。 - 进程之间通信需要使用特定的通信机制(例如管道、消息队列等),而线程之间共享进程的内存,可以直接读写共享数据。 - 创建和切换线程比创建和切换进程更加轻量级和高效。 1.1.2 多进程的优点是能够充分利用多核处理器的优势,同时提高系统吞吐量;缺点是创建和切换进程开销较大,占用较多的系统资源。多线程的优点是创建和切换线程开销小,节省系统资源,但线程之间共享内存可能会引发竞争条件和死锁等问题。 1.1.3 一般情况下,当需要执行不同任务时,可以选择使用多进程;而当需要执行相同或类似的任务时,可以选择使用多线程。 1.1.4 多进程和多线程的同步通信方法包括: - 互斥锁:用于保护共享资源,避免多个进程或线程同时访问,引发数据不一致的问题。 - 信号量:用于实现进程或线程之间的同步操作。 - 条件变量:用于在进程或线程之间传递特定条件的信息,以实现同步。 - 管道和消息队列:用于进程间通信。 1.1.5 进程的空间模型包括代码段、数据段和堆栈段。代码段存储程序的指令,数据段存储全局变量和静态变量,堆栈段存储函数调用和局部变量。 1.1.6 进程和线程都有状态转换图。当进程或线程正在执行时,处于运行状态;当等待某个事件完成时,处于阻塞状态;当等待某个资源就绪时,处于就绪状态。具体的状态转换图可以根据操作系统实现而有所不同。 1.1.7 父进程与子进程是通过进程创建机制相关联的进程。父进程创建子进程,并通过进程间通信机制进行通信。子进程是父进程的副本,它继承了父进程的资源和环境,并独立地执行。 1.1.8 进程上
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值