四个矩阵的切片数组

Slicing Array of four matrices

我有一个包含 4 张图片的数组,每张图片可以说是 NxM(所有图片都具有相同的大小)

(顺便说一句,我正在实现一个哈里斯角检测器。)

现在我做了一个矩阵M = ([Ix^2, Ixy],[Ixy, Iy^2]).reshape(2,2) 现在我想计算我的回应。 通常是 Det(RM) - k*(trace(RM)**2) RM 是一个 2x2 矩阵,该矩阵中的每个点都来自 M 中每个图像的相同坐标位置。

如何切分 M 来创建 RM? 换句话说,我如何对矩阵 M 进行切片,为 NxM 图像中的每个像素创建一个更小的矩阵 2x2 RM? 例如,第一个 RM 矩阵应该是一个 2x2 矩阵,从 M.

中的每个图像获取 0,0 坐标

根据你的描述,不太清楚RM和M是什么。

M 是包含所有 4 幅图像的 ndarray,而 RM 是包含 4 幅图像数据的给定像素的 2x2 阵列吗?

您可以将 4 张图像放入同一个 ndarray 中,使其具有 (4,N,M) 的形状,然后重塑切片。

例如,要获取 (0,0) 条目,您可以 A[:,0,0] 获取 4 个像素,然后对其进行整形以获取 2x2 数组。