OpenCV 4.10.0
开源计算机视觉库
|
函数 | |
GMat | cv::gapi::BackgroundSubtractor (const GMat &src, const cv::gapi::video::BackgroundSubtractorParams &bsParams) |
基于高斯混合模型或 K 近邻的背景/前景分割 算法。此操作生成前景掩码。 | |
std::tuple< GArray< GMat >, GScalar > | cv::gapi::buildOpticalFlowPyramid (const GMat &img, const Size &winSize, const GScalar &maxLevel, bool withDerivatives=true, int pyrBorder=BORDER_REFLECT_101, int derivBorder=BORDER_CONSTANT, bool tryReuseInputImage=true) |
构建可传递给 calcOpticalFlowPyrLK 的图像金字塔。 | |
std::tuple< GArray< Point2f >, GArray< uchar >, GArray< float > > | cv::gapi::calcOpticalFlowPyrLK (const GArray< GMat > &prevPyr, const GArray< GMat > &nextPyr, const GArray< Point2f > &prevPts, const GArray< Point2f > &predPts, const Size &winSize=Size(21, 21), const GScalar &maxLevel=3, const TermCriteria &criteria=TermCriteria(TermCriteria::COUNT|TermCriteria::EPS, 30, 0.01), int flags=0, double minEigThresh=1e-4) |
std::tuple< GArray< Point2f >, GArray< uchar >, GArray< float > > | cv::gapi::calcOpticalFlowPyrLK (const GMat &prevImg, const GMat &nextImg, const GArray< Point2f > &prevPts, const GArray< Point2f > &predPts, const Size &winSize=Size(21, 21), const GScalar &maxLevel=3, const TermCriteria &criteria=TermCriteria(TermCriteria::COUNT|TermCriteria::EPS, 30, 0.01), int flags=0, double minEigThresh=1e-4) |
使用具有金字塔的迭代 Lucas-Kanade 方法计算稀疏特征集的光流。 | |
GMat | cv::gapi::KalmanFilter (const GMat &measurement, const GOpaque< bool > &haveMeasurement, const cv::gapi::KalmanParams &kfParams) |
GMat | cv::gapi::KalmanFilter (const GMat &measurement, const GOpaque< bool > &haveMeasurement, const GMat &control, const cv::gapi::KalmanParams &kfParams) |
标准卡尔曼滤波器算法 http://en.wikipedia.org/wiki/Kalman_filter. | |
GMat cv::gapi::BackgroundSubtractor | ( | const GMat & | src, |
const cv::gapi::video::BackgroundSubtractorParams & | bsParams | ||
) |
#include <opencv2/gapi/video.hpp>
基于高斯混合模型或 K 近邻的背景/前景分割 算法。此操作生成前景掩码。
src | 输入图像:浮点帧在不缩放的情况下使用,应在范围 [0,255] 内。 |
bsParams | 背景减除内核的初始化参数集。 |
std::tuple< GArray< GMat >, GScalar > cv::gapi::buildOpticalFlowPyramid | ( | const GMat & | img, |
const Size & | winSize, | ||
const GScalar & | maxLevel, | ||
bool | withDerivatives = true , |
||
int | pyrBorder = BORDER_REFLECT_101 , |
||
int | derivBorder = BORDER_CONSTANT , |
||
bool | tryReuseInputImage = true |
||
) |
#include <opencv2/gapi/video.hpp>
构建可传递给 calcOpticalFlowPyrLK 的图像金字塔。
img | 8 位输入图像。 |
winSize | 光流算法的窗口大小。必须不小于 calcOpticalFlowPyrLK 的 winSize 参数。需要计算金字塔级别所需的填充。 |
maxLevel | 基于 0 的最大金字塔级别编号。 |
withDerivatives | 设置为预计算每个金字塔级别的梯度。如果金字塔在没有梯度的情况下构建,那么 calcOpticalFlowPyrLK 将在内部计算它们。 |
pyrBorder | 金字塔层级的边框模式。 |
derivBorder | 梯度的边框模式。 |
tryReuseInputImage | 如果可能,将输入图像的 ROI 放入金字塔。您可以传递 false 强制数据复制。 |
std::tuple< GArray< Point2f >, GArray< uchar >, GArray< float > > cv::gapi::calcOpticalFlowPyrLK | ( | const GArray< GMat > & | prevPyr, |
const GArray< GMat > & | nextPyr, | ||
const GArray< Point2f > & | prevPts, | ||
const GArray< Point2f > & | predPts, | ||
const Size & | winSize = Size(21, 21) , |
||
const GScalar & | maxLevel = 3 , |
||
const TermCriteria & | criteria = TermCriteria(TermCriteria::COUNT|TermCriteria::EPS, 30, 0.01) , |
||
int | flags = 0 , |
||
double | minEigThresh = 1e-4 |
||
) |
#include <opencv2/gapi/video.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数不同。
std::tuple< GArray< Point2f >, GArray< uchar >, GArray< float > > cv::gapi::calcOpticalFlowPyrLK | ( | const GMat & | prevImg, |
const GMat & | nextImg, | ||
const GArray< Point2f > & | prevPts, | ||
const GArray< Point2f > & | predPts, | ||
const Size & | winSize = Size(21, 21) , |
||
const GScalar & | maxLevel = 3 , |
||
const TermCriteria & | criteria = TermCriteria(TermCriteria::COUNT|TermCriteria::EPS, 30, 0.01) , |
||
int | flags = 0 , |
||
double | minEigThresh = 1e-4 |
||
) |
#include <opencv2/gapi/video.hpp>
使用具有金字塔的迭代 Lucas-Kanade 方法计算稀疏特征集的光流。
参见 [36] 。
prevImg | 第一个 8 位输入图像 (GMat) 或由 buildOpticalFlowPyramid 构建的金字塔 (GArray<GMat>)。 |
nextImg | 第二个输入图像 (GMat) 或与 prevImg 大小和类型相同的金字塔 (GArray<GMat>)。 |
prevPts | GArray 包含需要查找流的二维点;点坐标必须是单精度浮点数。 |
predPts | GArray 包含流搜索的初始二维点;仅在传递 OPTFLOW_USE_INITIAL_FLOW 标志时才有意义;在这种情况下,向量的大小必须与输入相同。 |
winSize | 每个金字塔级别搜索窗口的大小。 |
maxLevel | 基于 0 的最大金字塔级别编号;如果设置为 0,则不使用金字塔(单个级别),如果设置为 1,则使用两个级别,依此类推;如果金字塔传递到输入,则算法将使用与金字塔具有的相同级别的数量,但不超过 maxLevel。 |
criteria | 参数,指定迭代搜索算法的终止条件(在指定的最大迭代次数 criteria.maxCount 之后或当搜索窗口移动小于 criteria.epsilon 时)。 |
flags | 操作标志
|
minEigThresh | 算法计算光流方程的 2x2 正常矩阵的最小特征值(此矩阵在 [36] 中被称为空间梯度矩阵),除以窗口中的像素数;如果此值小于 minEigThreshold,则相应特征会被过滤掉,并且不会处理其流,因此它允许去除不良点并提高性能。 |
GMat cv::gapi::KalmanFilter | ( | const GMat & | 测量值, |
const GOpaque< bool > & | 是否有测量值, | ||
const cv::gapi::KalmanParams & | kfParams | ||
) |
#include <opencv2/gapi/video.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的不同之处仅在于它接受的参数。标准卡尔曼滤波器算法在动态系统中没有控制时的案例。在这种情况下,控制矩阵为空,控制向量不存在。
测量值 | 输入矩阵:包含测量值的 32 位或 64 位浮点单通道矩阵。 |
是否有测量值 | 动态输入标志,指示我们在特定迭代中是否获得测量值。 |
kfParams | 卡尔曼滤波器内核的初始化参数集。 |
GMat cv::gapi::KalmanFilter | ( | const GMat & | 测量值, |
const GOpaque< bool > & | 是否有测量值, | ||
const GMat & | 控制, | ||
const cv::gapi::KalmanParams & | kfParams | ||
) |
#include <opencv2/gapi/video.hpp>
标准卡尔曼滤波器算法 http://en.wikipedia.org/wiki/Kalman_filter.
测量值 | 输入矩阵:包含测量值的 32 位或 64 位浮点单通道矩阵。 |
是否有测量值 | 动态输入标志,指示我们在特定迭代中是否获得测量值。 |
控制 | 输入矩阵:包含用于更改动态系统的控制数据的 32 位或 64 位浮点单通道矩阵。 |
kfParams | 卡尔曼滤波器内核的初始化参数集。 |
如果给出测量矩阵 (haveMeasurements == true),则将返回校正的状态,该状态对应于管道 cv::KalmanFilter::predict(control) -> cv::KalmanFilter::correct(measurement)。否则,将返回预测的状态,该状态对应于 cv::KalmanFilter::predict(control) 的调用。