在PyTorch中,你可以使用[torch.cuda.set_device(device)来设置要使用的GPU。device参数是你想要使用的GPU的索引号,例如,如果你有两个GPU,那么它们的索引号分别是0和1。

在你的代码中,你可以在加载模型到GPU之前,添加一行代码来设置要使用的GPU。例如,如果你想要在GPU-1上运行你的程序,你可以这样做:


import torch
import torchvision

# 设置要使用的GPU
torch.cuda.set_device(1)

# 加载预训练的Faster R-CNN模型
model = torchvision.models.detection.fasterrcnn_resnet50_fpn(pretrained=True)
model = model.cuda()  # 将模型移动到GPU上
model.eval()  # 设置模型为评估模式

# ...其余代码不变...

GPU的索引号是从0开始的,所以GPU-1实际上是第二个GPU。如果想要在第一个GPU上运行你的程序,应该使用torch.cuda.set_device(0)

此外,需要确保的所有CUDA张量也在同一个GPU上。在代码中,你在contains_face函数中创建了一个CUDA张量。你应该确保这个张量在你选择的GPU上,可以通过在torch.cuda.set_device(1)后面添加frame = frame.cuda()来实现这一点。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐