类 BackgroundSubtractorKNN
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.video.BackgroundSubtractor
-
- org.opencv.video.BackgroundSubtractorKNN
-
public class BackgroundSubtractorKNN extends BackgroundSubtractor
基于K近邻的背景/前景分割算法。此类实现了在CITE: Zivkovic2006中描述的K近邻背景减法。如果前景像素数量较少,则非常高效。
-
-
构造函数摘要
构造函数 修饰符 构造函数 描述 protectedBackgroundSubtractorKNN(long addr)
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static BackgroundSubtractorKNN__fromPtr__(long addr)protected voidfinalize()booleangetDetectShadows()返回阴影检测标志。如果为真,则算法检测阴影并对其进行标记。doublegetDist2Threshold()返回像素与样本之间平方距离的阈值。像素与样本之间平方距离的阈值,用于确定像素是否接近数据样本。intgetHistory()返回影响背景模型的最后帧数。intgetkNNSamples()返回邻居数,即kNN中的k。intgetNSamples()返回背景模型中的数据样本数。doublegetShadowThreshold()返回阴影阈值。如果像素是背景的较暗版本,则检测到阴影。intgetShadowValue()返回阴影值。阴影值是在前景蒙版中用于标记阴影的值。voidsetDetectShadows(boolean detectShadows)启用或禁用阴影检测voidsetDist2Threshold(double _dist2Threshold)设置平方距离的阈值voidsetHistory(int history)设置影响背景模型的最后帧数voidsetkNNSamples(int _nkNN)设置kNN中的k。voidsetNSamples(int _nN)设置背景模型中的数据样本数。voidsetShadowThreshold(double threshold)设置阴影阈值voidsetShadowValue(int value)设置阴影值-
继承自类 org.opencv.video.BackgroundSubtractor 的方法
apply, apply, getBackgroundImage
-
继承自类 org.opencv.core.Algorithm 的方法
clear, empty, getDefaultName, getNativeObjAddr, save
-
-
-
-
方法详情
-
__fromPtr__
public static BackgroundSubtractorKNN __fromPtr__(long addr)
-
getHistory
public int getHistory()
返回影响背景模型的最后帧数。- 返回
- 自动生成
-
setHistory
public void setHistory(int history)
设置影响背景模型的最后帧数- 参数
history- 自动生成
-
getNSamples
public int getNSamples()
返回背景模型中的数据样本数。- 返回
- 自动生成
-
setNSamples
public void setNSamples(int _nN)
设置背景模型中的数据样本数。模型需要重新初始化以保留内存。- 参数
_nN- 自动生成
-
getDist2Threshold
public double getDist2Threshold()
返回像素与样本之间平方距离的阈值。像素与样本之间平方距离的阈值,用于确定像素是否接近数据样本。- 返回
- 自动生成
-
setDist2Threshold
public void setDist2Threshold(double _dist2Threshold)
设置平方距离的阈值- 参数
_dist2Threshold- 自动生成
-
getkNNSamples
public int getkNNSamples()
返回邻居数,即kNN中的k。K是需要在dist2Threshold内的样本数,以便确定该像素与kNN背景模型匹配。- 返回
- 自动生成
-
setkNNSamples
public void setkNNSamples(int _nkNN)
设置kNN中的k。需要匹配多少个最近邻。- 参数
_nkNN- 自动生成
-
getDetectShadows
public boolean getDetectShadows()
返回阴影检测标志。如果为真,则算法检测阴影并对其进行标记。有关详细信息,请参阅createBackgroundSubtractorKNN。- 返回
- 自动生成
-
setDetectShadows
public void setDetectShadows(boolean detectShadows)
启用或禁用阴影检测- 参数
detectShadows- 自动生成
-
getShadowValue
public int getShadowValue()
返回阴影值。阴影值是在前景蒙版中用于标记阴影的值。默认值为127。蒙版中的值0始终表示背景,255表示前景。- 返回
- 自动生成
-
setShadowValue
public void setShadowValue(int value)
设置阴影值- 参数
value- 自动生成
-
getShadowThreshold
public double getShadowThreshold()
返回阴影阈值。如果像素是背景的较暗版本,则检测到阴影。阴影阈值(论文中的Tau)是定义阴影可以暗多少的阈值。Tau= 0.5表示如果像素暗度超过两倍,则它不是阴影。参见Prati,Mikic,Trivedi和Cucchiara,Detecting Moving Shadows...*,IEEE PAMI,2003。- 返回
- 自动生成
-
setShadowThreshold
public void setShadowThreshold(double threshold)
设置阴影阈值- 参数
threshold- 自动生成
-
finalize
protected void finalize() throws java.lang.Throwable- 重写
finalize在类BackgroundSubtractor中- 抛出
java.lang.Throwable
-
-