def get_logical_mask(values, greater=50, less=-50, equal_value=None, fillnan=False)
|
生成逻辑掩膜:标记大于/小于阈值或等于指定值的元素;可选将 NaN 也纳入掩膜(fillnan=True) |
def fill_nan_by_interpolate(values, method='linear', dims=None, max_gap=None, coords=None)
|
对二维数组的 NaN 做插值填充(linear/nearest/cubic);可选限制最大插值距离 max_gap |
def inpaint_nan_diffusion(data, sigma=1, max_iter=100, tol=1e-3)
|
用高斯扩散迭代方式修复 NaN 区域,直到收敛或达到最大迭代次数 |
def get_deformation_gradients(image_data, guassian_sigma=0.8, guassian_radius=5)
|
对影像做高斯平滑(可选)后计算梯度幅值与方向(用一阶差分卷积核) |
def non_maximization_suppress(gradient_magnitude, gradient_direction)
|
非极大值抑制(NMS):沿梯度方向保留局部极大值,抑制非边缘响应 |
def windowing_logical_r_c(r, c, win_radius, shape)
|
在大小为 shape 的数组中,以 (r, c) 为中心开窗(半径 win_radius),返回窗口内所有像素的行列下标网格 |
def windowing_logical(win_radius, shape, region=None)
|
窗口下标迭代器:在 region=[r_start,r_end,c_start,c_end] 范围内遍历每个中心点,逐个 yield 对应的窗口下标 |
def region_growing(image, seed, threshold, connectivity=8)
|
基础区域生长:从种子点开始,按阈值 threshold 吸收相似像元;支持 4/8 邻域 |
def region_growing_adaptive(image, seed, k=1.5, connectivity=8, max_iter=1e6)
|
自适应区域生长:阈值随当前区域标准差动态变化(threshold = k * std),并限制最大迭代 |
def region_growing_priority(image, seed, n_per_iter=1, max_points=None, connectivity=8)
|
优先队列区域生长:每次优先吸收差值最小的候选点;支持 NaN(跳过 NaN 点)并可限制区域最大点数 |
def build_polygon_to_extract_datas(values, loading_polygon_line_file=None, save_polygon_line_file=None, **kwargs)
|
构建/读取多段线并生成多边形,用于从栅格中提取多边形覆盖区域(返回布尔掩膜);可选保存多段线 |