深度学习目标检测pytorch检测代码,可快速查找环境问题
本文给出了一个检测torch环境的代码。部分读者在部署YOLO目标检测框架时遇到NVIDIA显卡未正常调用的问题,当指定使用GPU设备(device=0)时,系统抛出硬件资源分配异常。如以下报错。
本文给出了一个快速检测torch环境的代码。
部分读者在部署YOLO目标检测框架时遇到NVIDIA显卡未正常调用的问题,当指定使用GPU设备(device=0)时,系统抛出硬件资源分配异常。如以下报错。
ValueError: Invalid CUDA 'device=0' requested. Use 'device=cpu' or pass valid CUDA device(s) if available, i.e. 'device=0' or 'device=0,1,2,3' for Multi-GPU.
总之就是有N卡却无法使用N卡进行训练,这时候更改为device为cpu可以正常训练,特别是我的以下环境配置及训练数据的教程中。
超详细目标检测:YOLOv11(ultralytics)训练自己的数据集,新手小白也能学会训练模型,手把手教学一看就会-CSDN博客文章浏览阅读3.7w次,点赞227次,收藏902次。对电脑小白也很简单的yolov11教程!训练自己的数据集分为4部分,先配置环境,再获取制作自己的数据集,然后修改配置训练,最后验证训练结果,附带可视化界面。YOLOv11为Ultralytics公司YOLO系列实时目标检测器的最新迭代版本,训练流程与YOLOv8基本一致,仅替换了新的网络结构与预训练权重,如果有其他目标检测的数据集可以直接拿来用,从第3训练模型开始看,新手小白0基础建议一步一步跟着来,哪里看不懂的或者遇到哪有问题可以发到评论区交流~_yolov11https://blog.csdn.net/qq_67105081/article/details/143402823?spm=1001.2014.3001.5502原因是因为我发现很多不是从头到尾按照我的这些教程做的,而是看了很多篇教程拼凑起来的一个环境,导致了使用的torch及一些关键python库的版本与我教程中所使用的不一致,导致出现一些问题,而且这些问题本质上使用我教程中的指令去下载是不会出现这些报错的,因此我给出一个查看pytorch等库版本的代码,以及我所使用的非常稳定的版本。
# 作者:CSDN-笑脸惹桃花 https://blog.csdn.net/qq_67105081?type=blog
import sys
import platform
import importlib.metadata
from typing import Optional
def check_module_version(module_name: str) -> Optional[str]:
try:
return importlib.metadata.version(module_name)
except importlib.metadata.PackageNotFoundError:
return None
def check_environment():
# 系统信息
print("=" * 50)
print("System and Environment Information")
print("=" * 50)
print(f"Operating System: {platform.system()}")
print(f"Python Version: {sys.version}")
print(f"Python Executable: {sys.executable}")
print("\nPython Sys Path:")
for path in sys.path:
print(f" {path}")
# 分隔线
print("\n" + "=" * 50)
print("Deep Learning Libraries")
print("=" * 50)
# 检查 PyTorch
try:
import torch
print(f"PyTorch Version: {torch.__version__}")
print(f"PyTorch CUDA Version: {torch.version.cuda}")
print(f"PyTorch CUDA Available: {torch.cuda.is_available()}")
if torch.cuda.is_available():
print(f"CUDA Device Count: {torch.cuda.device_count()}")
for i in range(torch.cuda.device_count()):
print(f" GPU {i}: {torch.cuda.get_device_name(i)}")
else:
print("No CUDA-capable GPU detected.")
except ImportError:
print("PyTorch not installed.")
# 检查其他常用库
print("\nOther Dependencies:")
libraries = ["numpy", "opencv-python", "pillow", "matplotlib", "scipy"]
for lib in libraries:
version = check_module_version(lib)
print(f"{lib}: {version if version else 'Not installed'}")
if __name__ == "__main__":
check_environment()
使用这个代码运行后会出现具体的版本,可以根据这个版本确定问题出在哪里。

torch的具体版本为2.0.0+cu118,而且下面的cuda版本为11.8,与cu118相对应。如果出现torch版本中带有cpu,则需要按照教程重新配置环境。
更多推荐
所有评论(0)