首先一定要确保你的cuda版本与你虚拟环境安装的torch的cuda版本一致!!!!!我就因为这个问题又重新卸载安装了cuda
按照官网步骤走真的运行成功了,历经了好几天磨难!!!!!
首先使用git命令下载官网代码
git clone https://github.com/IDEA-Research/GroundingDINO.git
下载的时候你需要科学上网,下载如果报错的话移步我的另一篇文章:
项目bug-从github上git clone代码报错问题-CSDN博客
首先你肯定是要创建一个虚拟环境的,命令:conda create -n dino python==3.10
我的虚拟环境名称为dino,你可以改为你自己想要的名字。首先激活你创建的环境,conda activate dino
把目录切换到你刚刚下载好的文件夹下,cd GroundingDINO
运行命令 (别忘了-e后面的一个点),我运行时候不知道为啥报错了,别放弃我又重新执行了两次命令,就成功了!
扩展: -e 后接 . 代表将当前项目以软链接并且可修改的形式安装到当前python环境中,一句话来说就是该命令会执行当前目录下的setup.py文件,具体做什么得看setup.py怎么写的, 安装完成后, 通过执行pip list,便可看到当前项目被安装到了python环境中。
pip install -e .
但是呢它会有一些爆红!!不影响,直接按照上面的爆红提示安装相应的包就可以了
分别为:
pip install pyasn1-modules==0.2.1
pip install markdown==2.6.8
pip install werkzeug==1.0.1
然后在文件夹下创建一个weights文件夹,用来存放权重文件,权重文件下载链接:https://github.com/IDEA-Research/GroundingDINO/releases/download/v0.1.0-alpha/groundingdino_swint_ogc.pth
我看官网用一个命令来下载,但是pycharm说这wget不是内部命令,我就直接通过链接下载之后给他手动放到了weights文件夹下!!!
wget -q https://github.com/IDEA-Research/GroundingDINO/releases/download/v0.1.0-alpha/groundingdino_swint_ogc.pth
然后新建一个python文件,test.py用来测试一下项目,test.py代码:
from groundingdino.util.inference import load_model, load_image, predict, annotate
import cv2
#加载模型
model = load_model("groundingdino/config/GroundingDINO_SwinT_OGC.py", "weights/groundingdino_swint_ogc.pth")
#要预测的图片路径
IMAGE_PATH = ".asset/cat_dog.jpeg"
#要预测的类别提示,可以输入多个类中间用英文句号隔开
TEXT_PROMPT = "cat,dog"
BOX_TRESHOLD = 0.35
TEXT_TRESHOLD = 0.25
image_source, image = load_image(IMAGE_PATH)
boxes, logits, phrases = predict(
model=model,
image=image,
caption=TEXT_PROMPT,
box_threshold=BOX_TRESHOLD,
text_threshold=TEXT_TRESHOLD
)
annotated_frame = annotate(image_source=image_source, boxes=boxes, logits=logits, phrases=phrases)
#保存预测的图片,保存到outputs文件夹中,名称为annotated_image.jpg
cv2.imwrite("annotated_image.jpg", annotated_frame)
但是给我报错了,看原因应该是torch不是GPU版本的,我就pip list查看了一下torch包的版本,是CPU版本的,所以我有重新安装了GPU版本的torch
GPU版本torch安装:
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118
安装完成之后再次运行python test.py命令,再次出现以下报错
我在官网看了别人的解决方案,如下:
1.先把根目录切换到上一级文件夹
cd ..
2.在运行以下命令
pip install -e GroundingDINO --no-build-isolation
3.再次运行python test.py就可以了
其中有以下三条警告,但是他不影响运行,再项目文件夹里就看到了生成的结果图片
完结撒花:
之前运行的时候还遇到了这些问题,在此存档吧!!!
:pip install -e . 运行完我就出现了这个报错,找了很多解决办法,
不想安装visual的办法如下链接:(解决办法:conda install libpython m2w64-toolchain -c msys2
)参考:Microsoft Visual C++ 14.0 is required.-CSDN博客
但是最后我还是下载了vc工具,参考:pip错误“Microsoft Visual C++ 14.0 is required.”解决办法 - 知乎 (zhihu.com)
但是解决完之后又报了新的错误,头大啊!!!ok这个错误是一个小错误,不可以开着科学上网工具运行项目!!!关掉之后就没有这个错了: