小编use*_*241的帖子

从源码安装 Opencv 到 conda 环境

我想从源代码将 opencv 安装到我的 conda 环境中。由于我使用的是 Jetson,因此没有可用于 opencv 的 pip 或 conda 包。

我使用此命令从源安装,

    -D BUILD_EXAMPLES=OFF
    -D BUILD_opencv_python2=ON
    -D BUILD_opencv_python3=ON
    -D CMAKE_BUILD_TYPE=RELEASE
    -D CMAKE_INSTALL_PREFIX=${PREFIX}
    -D CUDA_ARCH_BIN=5.3,6.2,7.2
    -D CUDA_ARCH_PTX=
    -D CUDA_FAST_MATH=ON
    -D CUDNN_VERSION='8.0'
    -D EIGEN_INCLUDE_PATH=/usr/include/eigen3 
    -D ENABLE_NEON=ON
    -D OPENCV_DNN_CUDA=ON
    -D OPENCV_ENABLE_NONFREE=ON
    -D OPENCV_EXTRA_MODULES_PATH=/tmp/build_opencv/opencv_contrib/modules
    -D OPENCV_GENERATE_PKGCONFIG=ON
    -D WITH_CUBLAS=ON
    -D WITH_CUDA=ON
    -D WITH_CUDNN=ON
    -D WITH_GSTREAMER=ON
    -D WITH_LIBV4L=ON
    -D WITH_OPENGL=ON"
Run Code Online (Sandbox Code Playgroud)

如何将 python 依赖项安装到我的 conda 环境而不是将其安装到usr/local/python

python opencv conda

16
推荐指数
1
解决办法
2067
查看次数

在 Pytorch 中查找前 k 个匹配项

我正在使用以下代码使用 pytorch 查找 topk 匹配项:

def find_top(self, x, y, n_neighbors, unit_vectors=False, cuda=False):
    if not unit_vectors:
        x = __to_unit_torch__(x, cuda=cuda)
        y = __to_unit_torch__(y, cuda=cuda)
    with torch.no_grad():
        d = 1. - torch.matmul(x, y.transpose(0, 1))
        values, indices = torch.topk(d, n_neighbors, dim=1, largest=False, sorted=True)
        return indices.cpu().numpy()
Run Code Online (Sandbox Code Playgroud)

不幸的是,它抛出以下错误:

values, indices = torch.topk(d, n_neighbors, dim=1, largest=False, sorted=True)
RuntimeError: invalid argument 5: k not in range for dimension at /pytorch/aten/src/THC/generic/THCTensorTopK.cu:23
Run Code Online (Sandbox Code Playgroud)

d 的大小是(1793,1) 。我错过了什么?

python top-n python-3.x pytorch

6
推荐指数
1
解决办法
445
查看次数

如何将 numpy.int64 分配给 torch.cuda.FloatTensor?

我无法将 int64 分配给 torch 张量。我有以下张量

tempScale = torch.zeros((total, len(scale))).cuda() if useGpu else torch.zeros((nbPatchTotal, len(scale)))
Run Code Online (Sandbox Code Playgroud)

在我的代码中,当我使用以下行时,它会抛出错误消息

tmpScale[:, j] = scale
Run Code Online (Sandbox Code Playgroud)

错误信息是

TypeError: can't assign a numpy.int64 to a torch.cuda.FloatTensor

我缺少什么?

python pytorch torchvision

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

python ×3

pytorch ×2

conda ×1

opencv ×1

python-3.x ×1

top-n ×1

torchvision ×1