Advertisement

OpenSeeD:A Simple Framework for Open Vocabulary Segmentation and Detection代码复现

阅读量:

这项研究于2023年发表在ICCV期刊上。它是一个简洁且高效的开放域分割与检测系统。该系统能够通过融合多种分割与检测数据集进行统一优化。针对由于词汇粒度与标注粒度不一致所带来的挑战,我们首先开发并引入了基于大规模语料库预训练的文本编码模型。将这两个目标任务的所有视觉概念进行统一编码,并在此语义框架中学习共享表示模型。

一、代码复现–配置环境

该指令用于通过指定源渠道安装 torchmetrics==0.6.0 包,并解决安装失败的问题。

对于无法正常安装 timm==0.4.12 的情况,请按照以下操作步骤进行故障排查与修复方案:
命令:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple timm==0.4.12

3.安装包pycocotools==2.0.4,出现错误 ERROR: Could not build wheels for pycocotools, which is required to install pyproject.toml-based projects的解决方法
(1)下载如下pycocotools压缩包
链接:https://pan.baidu.com/s/1zyIX_VrFXNNdkV3ZsIOAjQ
提取码:1314
该压缩包中会有两个文件夹:

在这里插入图片描述

(2)解压完成后,请将压缩包内的两个文件夹复制粘贴到你的项目根目录下的Python环境配置中;例如,在我的虚拟环境中新建OpenSee,在该环境下我的包安装目录位于(一般在当前环境的路径下的Lib文件夹中的site-packages路径下)。 (3)之后重启MobaXterm并完成安装。

(2)解压完成后,请将压缩包内的两个文件夹复制粘贴到你的项目根目录下的Python环境配置中;例如,在我的虚拟环境中新建OpenSee,在该环境下我的包安装目录位于(一般在当前环境的路径下的Lib文件夹中的site-packages路径下)。 (3)之后重启MobaXterm并完成安装。

该模块因缺少'LINITIAL'功能导致运行异常,请按照以下步骤操作以修复

5.缺少模块错误:无法找到名为'cv2'的模块
安装命令:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

(1)将当前工作目录切换到./models/ops。
(2)运行make.sh中的Shell脚本。
(3)回到项目的根目录后即可重新执行操作以解决问题。

程序运行时出现WARNING提示:torch.meshgrid函数将在未来版本中要求传递相应的参数,请检查代码并相应地进行调整。

复制代码
    D:\Applications\anaconda3\envs\pytorch\lib\site-packages\torch\functional.py:504: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\TensorShape.cpp:3484.)
    return _VF.meshgrid(tensors, **kwargs)  # type: ignore[attr-defined]

解决办法:查找 pyrcha m 所使用的虚拟环境中的 functional.py 文件。依据报错信息定位到 functional 文件中的第 504 行,在第 504 行添加代码 indexing = 'ij'。

复制代码
    return _VF.meshgrid(tensors, **kwargs,indexing = 'ij')  # type: ignore[attr-defined]

修改后即可解决问题

8. 出现如下问题:

复制代码
    RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE when calling `cublasSgemm( handle, opa, opb, m, n, k, &alpha, a, lda, b, ldb, &beta, c, ldc)`,

解决方法:为此目的,请执行以下操作:\texttt{unset}\ \texttt{LD\_LIBRARY\_PATH}
该命令的作用如下:
(1)\texttt{unset}\ \texttt{LD\_LIBRARY\_PATH}此命令用于清除Linux或Unix操作系统中的\texttt{LD\_LIBRARY\_PATH}环境变量。
(2)在Linux或Unix系统中,\texttt{LD\_LIBRARY\_PATH}是一个环境变量,默认情况下会被设置为特定值;此值指示计算机应在哪里寻找程序所需的共享库文件。
(3)通过执行\texttt{unset}\ \texttt{LD\_LIBRARY\_PATH}此操作会清除上述设置并使计算机仅依赖于其默认配置来查找这些文件

遇到相关警告信息:
在安装依赖包时出现错误提示。
Running pip as the 'root' user can lead to broken permissions and conflicting behavior with the system package manager.
建议改用虚拟环境来避免这些问题。
https://pip.pypa.io/warnings/venv

解决方法:
基本安装命令使用git+https://github.com/cocodataset/panopticapi.git获取代码仓库。
在pip安装命令中带有–force-reinstall参数的情况下:
优化后的安装命令使用--force-reinstall参数以确保更新过程顺利完成。

如果在复现代码的期间遇见问题,及时交流哈~~~

全部评论 (0)

还没有任何评论哟~