OpenCV  4.10.0
开源计算机视觉
加载中...
搜索中...
无匹配
函数
支持 F0 变换的数学运算

详细描述

零阶模糊变换(\(F^0\)-变换)将整个图像变换为由其分量组成的矩阵。这些分量用于后面的计算,其中每个分量代表指定子区域的平均颜色。

函数

void cv::ft::FT02D_components (InputArray matrix, InputArray kernel, OutputArray components, InputArray mask=noArray())
 使用直接 \(F^0\)-变换计算数组的分量。
 
void cv::ft::FT02D_FL_process (InputArray matrix, const int radius, OutputArray output)
 为更高速度而优化的 \(F^0\)-变换计算的稍不精确的版本。此方法依靠线性基本函数。
 
void cv::ft::FT02D_FL_process_float (InputArray matrix, const int radius, OutputArray output)
 为更高速度而优化的 \(F^0\)-变换计算的稍不精确的版本。此方法依靠线性基本函数。
 
void cv::ft::FT02D_inverseFT (InputArray components, InputArray kernel, OutputArray output, int width, int height)
 计算逆 \(F^0\)-变换。
 
int cv::ft::FT02D_iteration (InputArray matrix, InputArray kernel, OutputArray output, InputArray mask, OutputArray maskOutput, bool firstStop)
 同时计算 \(F^0\)-变换和逆 \(F^0\)-变换并返回状态。
 
void cv::ft::FT02D_process (InputArray matrix, InputArray kernel, OutputArray output, InputArray mask=noArray())
 同时计算\(F^0\)-变换和逆\(F^0\)-变换。
 

函数文档

◆ FT02D_components()

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

#include <opencv2/fuzzy/fuzzy_F0_math.hpp>

使用直接 \(F^0\)-变换计算数组的分量。

参数
matrix输入数组。
kernel用于处理的核。可以使用 ft::createKernel 函数。
components用于存储各个成分的 32 位浮点输出数组。
mask可以使用掩码标记不需要的区域。

该函数使用预定义的核和掩码计算各个成分。

◆ FT02D_FL_process()

void cv::ft::FT02D_FL_process ( InputArray  matrix,
const int  radius,
OutputArray  output 
)
Python
cv.ft.FT02D_FL_process(matrix, radius[, output]) -> output

#include <opencv2/fuzzy/fuzzy_F0_math.hpp>

为更高速度而优化的 \(F^0\)-变换计算的稍不精确的版本。此方法依靠线性基本函数。

参数
matrix3 通道输入矩阵。
radiusft::LINEAR 基本函数的半径。
output输出数组。

此函数使用线性基本函数一步计算 F-变换和逆 F-变换。它的速度比 ft::FT02D_process 方法快约 10 倍。

◆ FT02D_FL_process_float()

void cv::ft::FT02D_FL_process_float ( InputArray  matrix,
const int  radius,
OutputArray  output 
)
Python
cv.ft.FT02D_FL_process_float(matrix, radius[, output]) -> output

#include <opencv2/fuzzy/fuzzy_F0_math.hpp>

为更高速度而优化的 \(F^0\)-变换计算的稍不精确的版本。此方法依靠线性基本函数。

参数
matrix3 通道输入矩阵。
radiusft::LINEAR 基本函数的半径。
output输出数组。

此函数使用线性基本函数一步计算 F-变换和逆 F-变换。它的速度比 ft::FT02D_process 方法快约 9 倍,并且比 ft::FT02D_FL_process 方法更准确。

◆ FT02D_inverseFT()

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

#include <opencv2/fuzzy/fuzzy_F0_math.hpp>

计算逆 \(F^0\)-变换。

参数
components用于存储各个成分的 32 位浮点单通道输入数组。
kernel用于处理的核。可以使用 ft::createKernel 函数。
output32 位浮点输出数组。
width输出数组的宽度。
宽度输出阵列的高度。

F 逆转换计算。

◆ FT02D_iteration()

int cv::ft::FT02D_iteration ( InputArray  matrix,
InputArray  kernel,
OutputArray  output,
InputArray  mask,
OutputArray  maskOutput,
bool  firstStop 
)
Python
cv.ft.FT02D_iteration(matrix, kernel, mask, firstStop[, output[, maskOutput]]) -> retval, output, maskOutput

#include <opencv2/fuzzy/fuzzy_F0_math.hpp>

同时计算 \(F^0\)-变换和逆 \(F^0\)-变换并返回状态。

参数
matrix输入矩阵。
kernel用于处理的核。可以使用 ft::createKernel 函数。
output32 位浮点输出数组。
mask用来标记不想要区域的掩码。
maskOutput一次迭代后的掩码。
firstStop如果为 true 函数在出现第一个问题时返回 -1。如果为 false,则过程会完成,并将返回的所有问题的总和。

此函数计算 F 转换和 F 逆转换的迭代,并处理图像和掩码更改。函数在 ft::inpaint 函数中使用。

◆ FT02D_process()

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

#include <opencv2/fuzzy/fuzzy_F0_math.hpp>

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

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

此函数一步计算 F 转换和 F 逆转换。它对 cv::Mat 来说完全足够且经过优化。