OpenCV  4.10.0
开源计算机视觉库
正在加载…
正在搜索…
无匹配项
函数
支持 F1 变换的数学运算

详细描述

一阶模糊变换(\(F^1\) 变换)将整个图像转换为其成分矩阵。 每个成分都是一阶多项式,承载着关于特定子区域的平均颜色和平均梯度的信息。

函数

void cv::ft::FT12D_components (InputArray matrix, InputArray kernel, OutputArray components)
 使用直接 \(F^1\) 变换计算数组的成分。
 
void cv::ft::FT12D_createPolynomMatrixHorizontal (int radius, OutputArray matrix, const int chn)
 为 \(F^1\) 变换计算创建水平矩阵。
 
void cv::ft::FT12D_createPolynomMatrixVertical (int radius, OutputArray matrix, const int chn)
 为 \(F^1\) 变换计算创建垂直矩阵。
 
void cv::ft::FT12D_inverseFT (InputArray components, InputArray kernel, OutputArray output, int width, int height)
 计算逆 \(F^1\) 变换。
 
void cv::ft::FT12D_polynomial (InputArray matrix, InputArray kernel, OutputArray c00, OutputArray c10, OutputArray c01, OutputArray components, InputArray mask=noArray())
 计算 \(F^1\) 变换成分的元素。
 
void cv::ft::FT12D_process (InputArray matrix, InputArray kernel, OutputArray output, InputArray mask=noArray())
 同时计算 \(F^1\) 变换和逆 \(F^1\) 变换。
 

函数文档

◆ FT12D_components()

void cv::ft::FT12D_components ( InputArray  matrix,
InputArray  kernel,
OutputArray  components 
)
Python
cv.ft.FT12D_components(matrix, kernel[, components]) -> components

#include <opencv2/fuzzy/fuzzy_F1_math.hpp>

使用直接 \(F^1\) 变换计算数组的成分。

参数
matrix输入数组。
kernel用于处理的内核。可以使用 ft::createKernel 函数。
components用于成分的输出 32 位浮点数组。

该函数使用预定义内核计算线性成分。

◆ FT12D_createPolynomMatrixHorizontal()

void cv::ft::FT12D_createPolynomMatrixHorizontal ( int  radius,
OutputArray  matrix,
const int  chn 
)
Python
cv.ft.FT12D_createPolynomMatrixHorizontal(radius, chn[, matrix]) -> matrix

#include <opencv2/fuzzy/fuzzy_F1_math.hpp>

为 \(F^1\) 变换计算创建水平矩阵。

参数
radius基本函数的半径。
matrix水平矩阵。
chn通道数量。

该函数为 \(F^1\) 变换处理创建辅助水平矩阵。 它用于梯度计算。

◆ FT12D_createPolynomMatrixVertical()

void cv::ft::FT12D_createPolynomMatrixVertical ( int  radius,
OutputArray  matrix,
const int  chn 
)
Python
cv.ft.FT12D_createPolynomMatrixVertical(radius, chn[, matrix]) -> matrix

#include <opencv2/fuzzy/fuzzy_F1_math.hpp>

为 \(F^1\) 变换计算创建垂直矩阵。

参数
radius基本函数的半径。
matrix垂直矩阵。
chn通道数量。

该函数为 \(F^1\) 变换处理创建辅助垂直矩阵。 它用于梯度计算。

◆ FT12D_inverseFT()

void cv::ft::FT12D_inverseFT ( InputArray  components,
InputArray  kernel,
OutputArray  output,
int  width,
int  height 
)
Python
cv.ft.FT12D_inverseFT(components, kernel, width, height[, output]) -> output

#include <opencv2/fuzzy/fuzzy_F1_math.hpp>

计算逆 \(F^1\) 变换。

参数
components用于成分的输入 32 位浮点单通道数组。
kernel用于处理的内核。必须使用与成分计算相同的内核。
output输出 32 位浮点数组。
width输出数组的宽度。
height输出数组的高度。

逆 \(F^1\) 变换的计算。

◆ FT12D_polynomial()

void cv::ft::FT12D_polynomial ( InputArray  matrix,
InputArray  kernel,
OutputArray  c00,
OutputArray  c10,
OutputArray  c01,
OutputArray  components,
InputArray  mask = noArray() 
)
Python
cv.ft.FT12D_polynomial(matrix, kernel[, c00[, c10[, c01[, components[, mask]]]]]) -> c00, c10, c01, components

#include <opencv2/fuzzy/fuzzy_F1_math.hpp>

计算 \(F^1\) 变换成分的元素。

参数
matrix输入数组。
kernel用于处理的内核。可以使用 ft::createKernel 函数。
c00元素表示平均颜色。
c10元素表示平均垂直梯度。
c01元素表示平均水平梯度。
components用于成分的输出 32 位浮点数组。
mask掩码可用于标记不需要的区域。

该函数使用预定义内核和掩码计算成分及其元素。

◆ FT12D_process()

void cv::ft::FT12D_process ( InputArray  matrix,
InputArray  kernel,
OutputArray  output,
InputArray  mask = noArray() 
)
Python
cv.ft.FT12D_process(matrix, kernel[, output[, mask]]) -> output

#include <opencv2/fuzzy/fuzzy_F1_math.hpp>

同时计算 \(F^1\) 变换和逆 \(F^1\) 变换。

参数
matrix输入矩阵。
kernel用于处理的内核。可以使用 ft::createKernel 函数。
output输出 32 位浮点数组。
mask用于标记不需要的区域的掩码。

此函数一步计算 \(F^1\) 变换和逆 \(F^1\) 变换。 它对 cv::Mat 来说是完全足够的,并且经过优化。

注意
一阶 F 变换技术在 [287] 文档中有所描述。