Halocn中均值滤波
1、gen_mean_filter (Operator)
gen_mean_filter — 在频域中的均值滤波器。 :
gen_mean_filter 在频域中生成均值滤波器。均值滤波器的形状由 MaskShape 决定。对于 MaskShape = ‘rectangle’,生成一个矩形均值滤波器。对于 MaskShape = ‘ellipse’,会生成一个椭圆均值滤波器。空间域中均值滤波器的直径(即平滑量)由 Diameter1 和 Diameter2 确定。直径 1 是由角度 Phi 确定的空间域中滤波器的主方向上的直径。为了实现过滤操作的最大整体效率,参数 Norm 可用于指定过滤器的归一化因子。如果使用 fft_generic 和 Norm = ‘n’,则可以避免 FFT 中的归一化。模式可用于确定滤波器的 DC 项位于何处或是否应在实值 FFT 中使用滤波器。如果使用 fft_generic,则可以使用“dc_edge”来提高效率。如果 fft_image 和 fft_image_inv 用于过滤,则必须使用 Norm = ‘none’ 和 Mode = ‘dc_center’。如果使用 rft_generic,则必须使用 Mode = ‘rft’。
gen_mean_filter(
ImageMean,
MaskShape,
Diameter1,
Diameter2,
Phi,
Norm,
Mode,
Width,
Height
)
MFC联合Halcon处理效果
注:具体工程代码见MFC联合Halcon处理gen_mean_filter
2、mean_curvature_flow (Operator)
mean_curvature_flow — Apply the mean curvature flow to an image.:
算子 mean_curvature_flow 应用平均曲率流或固有热方程
mean_curvature_flow(
Image,
ImageMCF,
Sigma,
Theta,
Iterations
)
MFC联合Halcon处理效果
使用平均曲率流增强血管造影图像
注:具体工程代码见MFC联合Halcon处理mean_curvature_flow
3、mean_image (Operator)
mean_image — Smooth by averaging.:
算子mean_image对所有输入图像(Image)的灰度值进行线性平滑。过滤器矩阵由 1 组成(评估相同),大小为 MaskHeight x MaskWidth。卷积的结果除以 MaskHeight x MaskWidth 。对于边界处理,灰度值反映在图像边缘。 对于 mean_image,使用 SIMD 技术实现了特殊优化。这些特殊优化的实际应用由系统参数“mmx_enable”控制(参见 set_system)。如果“mmx_enable”设置为“true”(并且 SIMD 指令集可用),则使用 SIMD 技术执行内部计算。请注意,SIMD 技术在大而紧凑的输入区域上表现最佳。根据输入区域和硬件的能力,使用 SIMD 技术执行 mean_image 甚至可能比不使用 SIMD 技术花费更多的时间。 无论如何,选择 Image 的输入区域以避免任何边界处理对 mean_image 的性能是有利的.
mean_image(
Image,
ImageMean,
MaskWidth,
MaskHeight
)
4、mean_matrix (Operator)
mean_matrix — Returns the elementwise mean of a matrix.:
运算符 mean_matrix 返回由矩阵句柄 MatrixID 定义的矩阵元素的平均值。 使用结果生成一个新矩阵 MatrixMean,并返回该矩阵的矩阵句柄 MatrixMeanID。 可以访问矩阵的元素,例如 使用运算符 get_full_matrix。 可以通过参数 MeanType 选择矩阵的均值确定类型:
‘columns’: 分别为矩阵的每一列返回平均值。 生成的矩阵 MatrixMean 具有与输入矩阵相同的一行和相同的列数。 例子:
‘rows’: 分别为矩阵的每一行返回平均值。 生成的矩阵 MatrixMean 具有与输入矩阵相同的行数和一列。 例子:
‘full’: 使用矩阵的所有元素返回平均值。 生成的矩阵 MatrixMean 有一行和一列。 Example:
mean_matrix(
MatrixID,
MeanType,
MatrixMeanID
)
注:具体工程代码见MFC联合Halcon处理adjust_circle_matrix
5、mean_n (Operator)
mean_n — Average gray values over several channels.:
void MeanN(
const HObject& Image,
HObject* ImageMean
)
运算符 mean_n 生成所有通道的逐像素平均值。 对于每个坐标点,计算该坐标处所有灰度值的总和。 结果是灰度值的平均值(总和除以通道数)。 输出图像有一个通道。 `
6、mean_sp (Operator)
mean_sp — 抑制椒盐噪声。:
运算符 MeanSp 通过对这些值进行平均来执行平滑。 仅对从 MinThresh 到 MaxThresh 区间内的灰度值进行平均。 在求和过程中忽略太亮或太暗的灰度值。 如果求和过程中默认区间内没有灰度值,则采用原始灰度值。 如果阈值分别设置为 0 或 255,则运算符 MeanSp 的行为类似于 MeanImage,但运行时间除外。 运算符 MeanSp 用于抑制极端灰度值(椒盐噪声 = 白点和黑点)。
void MeanSp(
const HObject& Image,
HObject* ImageSPMean,
const HTuple& MaskWidth,
const HTuple& MaskHeight,
const HTuple& MinThresh,
const HTuple& MaxThresh
)
7、noise_distribution_mean (Operator)
确定图像的噪声分布。 :
noise_distribution_mean 计算图像 Image 的某个区域中的噪声分布。 参数 ConstRegion 确定具有近似恒定灰度值的图像区域。 理想情况下,灰度值的变化应该只由该区域的噪声引起。 从此区域确定噪声分布,通过使用 mean_image 算子对图像进行平滑处理,并使用该区域的灰度值差异作为噪声分布的估计值,该估计值在 Distribution 中返回。
noise_distribution_mean(
ConstRegion,
Image,
FilterSize,
Distribution
)
8、region_to_mean (Operator)
region_to_mean — Paint regions with their average gray value.:
region_to_mean(
Regions,
Image,
ImageMean
)
classify_image_class_svm
Segment an RGB image with an SVM classifier
classify_image_class_mlp
Segment an RGB image with an MLP classifier
9、regiongrowing_mean (Operator)
regiongrowth_mean — 使用平均灰度值执行区域增长 :
regiongrowth_mean 使用区域的平均灰度值执行区域增长,从 StartRows 和 StartColumns 给出的点开始。 在过程中的任何时候,都会计算当前区域的平均灰度值。 如果区域边界处的灰度值与当前平均值的差异小于 Tolerance,则将其添加到区域中。 小于 MinSize 的区域被抑制。
如果没有给出起始点(空元组),则扩展过程从最左上角开始,并在创建区域后从第一个未处理的点继续。
regiongrowing_mean(
Image,
Regions,
StartRows,
StartColumns,
Tolerance,
MinSize
)
MFC联合Halcon效果
10、smooth_funct_1d_mean (Operator)
smooth_funct_1d_mean — Smooth an equidistant 1D function by averaging its values.:
运算符 smooth_funct_1d_mean 通过多次应用平均(均值)滤波器来平滑一维函数。 该函数必须是等距的,即使用 create_funct_1d_array、sample_funct_1d 或类似函数创建。 在函数边界处,函数值被镜像。 如果给 SmoothSize 一个偶数值而不是一个奇数值,则例程使用下一个较大的奇数值代替(这样总是明确地确定过滤器掩码的中心)。
smooth_funct_1d_mean(
Function,
SmoothSize,
Iterations,
SmoothedFunction
)
11、trimmed_mean (Operator)
trimmed_mean — Smooth an image with an arbitrary rank mask.:
算子 trimmed_mean 对所有输入图像 (Image) 的灰度值进行非线性平滑。 过滤器掩码(Mask)以区域的形式传递。 计算位于中值附近的 Number 灰度值的平均值。 可以选择几种边界处理进行过滤(Margin):
灰度值 假定图像边缘之外的像素是恒定的(具有指示的灰度值)。 ‘continue’ 边缘像素的延续。 ‘cyclic’ 图像边缘的循环延续。 ‘mirrored’ 图像边缘像素的反射。
trimmed_mean(
Image,
Mask,
ImageTMean,
Number,
Margin
)
12、tuple_mean (Operator)
tuple_mean — Return the mean value of a tuple of numbers.:
tuple_mean(
Tuple,
Mean
)
tuple_mean 将输入元组 Tuple 的所有元素的平均值作为输出参数 Mean 中的浮点数返回。 输入元组可能只包含数字(整数或浮点数)。
|