在Pycharm运行GroundingDINO

在Pycharm配置并运行GroundingDINO网络(Windows)

下载源代码项目文件并导入到Pycharm中

  • 到github网站下载GroundingDINO源代码压缩文件
    image-32
  • 解压并导入Pycharm项目中
    不会导入的可以看我以前的文章
    image-33

下载网络权重文件

  • 复制网址到浏览器下载文件
    https://github.com/IDEA-Research/GroundingDINO/releases/download/v0.1.0-alpha/groundingdino_swint_ogc.pth
    
    image-35
  • 在GroundingDINO项目文件中创建一个名为weights的文件夹,并且把刚才下载的权重文件放在里面
    image-36

安装项目所需要的包

  • 打开Anaconda Prompt,激活Pycharm中选择的解释器环境(我的环境名称为pytorch)
    conda activate pytorch
    
    image-34
  • 切换到项目文件(cd加上自己项目文件的绝对路径)
    cd C:\Users\86176\Desktop\GroundingDINO-main
    
    image-38
    如果文件没有在C盘,则需要切换到D盘在使用cd命令切换到项目所在文件夹
    D:
    
    image-37
  • 运行setup.py文件(由于文件导入了torch,所以前提必须安装pytorch)
    python setup.py build develop
    
    image-39

运行代码做图片预测边界框

  • 在项目中创建了一个images文件夹,里面保存了一张名称为1.jpg的图片,还创建了一个outputs文件夹用于保存被标注的图片,还创建了一个test.py文件用于做预测
    image-40

  • 在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 = "images/1.jpg"
    #要预测的类别提示,可以输入多个类中间用英文句号隔开
    TEXT_PROMPT = "person"
    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("outputs/annotated_image.jpg", annotated_frame)
    
  • 运行代码期间会下载Bert预训练模型
    image-42

运行代码出现的错误

  • ModuleNotFoundError: No module named ‘pycocotools._mask’
    image-41
    原来我的pycocotools版本为2.0.2,然后我将它升级为2.0.7

    pip install pycocotools==2.0.7
    
  • NameError: name ‘_C’ is not defined
    这个我查询网站需要安装CUDA Toolkit加上cuDNN,我安装的版本的12.1,可以参考下面的帖子,我的torch的cuda版本也是12.1

    https://zhuanlan.zhihu.com/p/443114377
    https://blog.csdn.net/qq_42951560/article/details/116131410
    https://blog.csdn.net/qq_42951560/article/details/116133151
    

    安装后Anaconda Prompt设置环境变量

    set CUDA_HOME=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1
    

    然后在项目目录中重新安装项目

    pip install -e .
    

    最后重新运行test.py程序就可以了

运行结果

image-44
有很多warning我都没有管

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值