多维图像处理 (cupyx.scipy.ndimage)#
过滤器#
|
多维卷积。 |
|
一维卷积。 |
|
多维关联。 |
|
一维相关。 |
|
多维高斯滤波器。 |
|
沿给定轴的一维高斯滤波器。 |
|
使用高斯导数的多维梯度幅度。 |
|
使用高斯二阶导数的二维拉普拉斯滤波器。 |
|
使用提供的原始内核或缩减内核计算多维滤波器。 |
|
使用提供的原始内核沿给定轴计算一维滤波器。 |
|
使用提供的导数函数的多维梯度幅度滤波器。 |
|
使用提供的二阶导数函数的多维拉普拉斯滤波器。 |
|
基于近似二阶导数的多维拉普拉斯滤波器。 |
|
多维最大值滤波器。 |
|
沿单个轴计算最大滤波器。 |
|
多维中值滤波器。 |
|
多维最小滤波器。 |
|
沿单个轴计算最小滤波器。 |
|
多维百分位滤波器。 |
|
沿给定轴计算Prewitt滤波器。 |
|
多维排序滤波器。 |
|
沿给定轴计算Sobel滤波器。 |
|
多维均匀滤波器。 |
|
沿给定轴的一维均匀滤波器。 |
傅里叶滤波器#
|
多维椭球傅里叶滤波器。 |
|
多维高斯偏移滤波器。 |
|
多维傅里叶移位滤波器。 |
|
多维均匀移位滤波器。 |
插值#
|
应用仿射变换。 |
|
通过插值将输入数组映射到新坐标。 |
|
旋转数组。 |
|
移动数组。 |
|
多维样条滤波器。 |
|
沿着给定的轴计算一维样条滤波器。 |
|
缩放数组。 |
测量#
|
计算数组在标签处的值的质心。 |
|
计算数组在标签处的值的最小值和最大值,以及它们的位置。 |
|
计算数组值的直方图,可选地在标签处。 |
|
在数组中标记特征。 |
|
将 |
|
计算数组在标记区域上的值的最大值。 |
|
查找数组在标签处的最大值的位置。 |
|
计算n-D图像数组值的平均值,可选地 |
|
计算数组值在标记区域上的中位数。 |
|
计算数组在标记区域上的值的最小值。 |
|
在标签处找到数组值的最小值的位置。 |
|
计算n-D图像数组值的标准差,可以选择在指定的子区域进行。 |
|
计算一个 n-D 图像数组值的总和,可选地 |
|
在给定数组中查找每个不同值的索引。 |
|
计算n-D图像数组值的方差,可以选择在指定的子区域进行。 |
形态学#
|
使用给定的结构元素进行多维二进制闭合。 |
|
使用给定的结构元素进行多维二值膨胀。 |
|
使用给定的结构元素进行多维二值腐蚀。 |
|
填充二进制对象中的空洞。 |
|
多维二进制命中或未命中变换。 |
|
使用给定的结构元素进行多维二进制开运算。 |
|
使用给定的结构元素进行多维二进制传播。 |
|
多维黑帽滤波器。 |
|
精确的欧几里得距离变换。 |
|
生成二进制形态操作的二进制结构。 |
|
计算多维灰度闭合。 |
|
计算灰度膨胀。 |
|
计算灰度腐蚀。 |
|
计算多维灰度开运算。 |
|
通过用自身膨胀来迭代一个结构。 |
|
多维形态梯度。 |
|
多维形态学拉普拉斯。 |
|
多维白色顶帽滤波器。 |
OpenCV 模式#
cupyx.scipy.ndimage 支持额外的模式,opencv。如果指定此模式,函数将表现得像 cv2.warpAffine 或 cv2.resize。示例:
import cupyx.scipy.ndimage
import cupy as cp
import cv2
im = cv2.imread('TODO') # pls fill in your image path
trans_mat = cp.eye(4)
trans_mat[0][0] = trans_mat[1][1] = 0.5
smaller_shape = (im.shape[0] // 2, im.shape[1] // 2, 3)
smaller = cp.zeros(smaller_shape) # preallocate memory for resized image
cupyx.scipy.ndimage.affine_transform(im, trans_mat, output_shape=smaller_shape,
output=smaller, mode='opencv')
cv2.imwrite('smaller.jpg', cp.asnumpy(smaller)) # smaller image saved locally