【SAM2分割万物—本地部署:实时分割图像、视频】OSError:未设置环境变量CUDA_HOME。请将其设置为您的 CUDA 安装根目录。
待磨的钝刨 2024-09-10 11:07:02 阅读 67
文章目录
1.配置SAM22.可能在pip install -e .时报错2.1.方法`--no-build-isolation`2.2.原因
3.开始
参考:segment-anything-2 github
支持box、点输入、mask输入指导SAM2来试试分割视频、图像
1.配置SAM2
注意:需要 python>=3.10,以及 torch>=2.3.1 和 torchvision>=0.18.1。
建议为此安装创建一个新的 Python 环境,并按照 https://pytorch.org/ 通过
<code>pip 安装 PyTorch 2.3.1(或更高版本)。如果当前环境中的 PyTorch 版本低于 2.3.1,则上述安装命令将尝试使用 pip 将其升级到最新的 PyTorch 版本。
您可以使用以下方法在 GPU 计算机上安装 SAM 2:
git clone https://github.com/facebookresearch/segment-anything-2.git
cd segment-anything-2
pip install -e .
要使用 SAM 2 预测器并运行示例笔记本,需要 jupyter 和 matplotlib,可以通过以下方式进行安装:
pip install -e ".[demo]"
2.可能在pip install -e .时报错
raise OSError('CUDA_HOME environment variable is not set. '
OSError: CUDA_HOME environment variable is not set. Please set it to your CUDA install root.
[end of output]
2.1.方法--no-build-isolation
下面是我使用的方法在 Windows 11 上。
首先,下载cuda12.4(12.1也完全没有问题)
然后:
在系统环境变量中添加一个新条目,名称为CUDA_HOME,值为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4;
最后:
cd \segment-anything-2
conda create -n sam2 python=3.10
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install --no-build-isolation -e .
pip install --no-build-isolation -e ".[demo]"
2.2.原因
pip install --no-build-isolation -e .
和 pip install --no-build-isolation -e ".[demo]"
是安装Python包的命令。这两个命令的作用和参数如下:
--no-build-isolation
: 这个选项告诉pip
在安装过程中不使用隔离的构建环境。默认情况下,pip会创建一个临时的虚拟环境来安装包的构建依赖,然后在这个环境中进行构建。使用--no-build-isolation
选项可以使pip
直接使用当前环境中的构建依赖。这在某些情况下(例如需要与当前环境中的特定版本的依赖进行交互)是有用的,但也可能导致一些依赖冲突或环境污染的问题。
为什么要使用–no-build-isolation?
避免重复安装依赖:如果你已经在当前环境中安装了所有必要的依赖,并且不希望pip在构建过程中重新下载和安装这些依赖,那么使用--no-build-isolation
可以节省时间和资源。调试构建问题:有时,使用隔离环境可能会掩盖一些依赖或环境配置的问题。在这种情况下,禁用隔离环境可以帮助你更好地调试和解决这些问题。与现有环境更好地集成:在一些复杂的开发环境中,可能需要与当前环境中的特定依赖版本进行交互。在这种情况下,使用--no-build-isolation
可以确保构建过程使用当前环境中的依赖。
总结
使用–no-build-isolation可以避免重复安装依赖、帮助调试构建问题,并确保构建过程与现有环境更好地集成。
3.开始
下载检查点
首先,我们需要下载一个模型检查点。所有模型检查点都可以通过运行以下命令来下载:
cd checkpoints
./download_ckpts.sh
或单独下载:
sam2_hiera_tiny.pt
sam2_hiera_small.pt
sam2_hiera_base_plus.pt
sam2_hiera_large.pt
然后,SAM 2 可以分几行用于图像和视频预测,如下所示。
请参阅 image_predictor_example.ipynb
中的示例,了解静态图像用例。
有关如何在视频中添加提示、进行细化和跟踪多个对象的详细信息,请参阅 <code>video_predictor_example.ipynb 中的示例。
上一篇: docker pull 镜像报错:Using default tag: latestError response from daemon: missing signature key解决方案
下一篇: 你真的知道TCP协议吗?滑动窗口是什么?有什么重传机制?拥塞控制又是什么?一篇文章带你吃透TCP协议
本文标签
【SAM2分割万物—本地部署:实时分割图像、视频】OSError:未设置环境变量CUDA_HOME。请将其设置为您的 CUDA 安装根目录。
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。