Calculates optical flow for a sparse feature set using iterative Lucas-Kanade method in pyramids

Namespace: Emgu.CV
Assembly: Emgu.CV (in Emgu.CV.dll) Version: (


public static void PyrLK(
	Image<Gray, byte> prev,
	Image<Gray, byte> curr,
	PointF[] prevFeatures,
	Size winSize,
	int level,
	MCvTermCriteria criteria,
	out PointF[] currFeatures,
	out byte[] status,
	out float[] trackError
Visual Basic
Public Shared Sub PyrLK ( 
	prev As Image(Of Gray, Byte),
	curr As Image(Of Gray, Byte),
	prevFeatures As PointF(),
	winSize As Size,
	level As Integer,
	criteria As MCvTermCriteria,
	<OutAttribute> ByRef currFeatures As PointF(),
	<OutAttribute> ByRef status As Byte(),
	<OutAttribute> ByRef trackError As Single()
Visual C++
static void PyrLK(
	Image<Gray, unsigned char>^ prev, 
	Image<Gray, unsigned char>^ curr, 
	array<PointF>^ prevFeatures, 
	Size winSize, 
	int level, 
	MCvTermCriteria criteria, 
	[OutAttribute] array<PointF>^% currFeatures, 
	[OutAttribute] array<unsigned char>^% status, 
	[OutAttribute] array<float>^% trackError
static member PyrLK : 
        prev : Image<Gray, byte> * 
        curr : Image<Gray, byte> * 
        prevFeatures : PointF[] * 
        winSize : Size * 
        level : int * 
        criteria : MCvTermCriteria * 
        currFeatures : PointF[] byref * 
        status : byte[] byref * 
        trackError : float32[] byref -> unit 


Type: Emgu.CV..::..Image<(Of <(<'Gray, Byte>)>)>
First frame, at time t
Type: Emgu.CV..::..Image<(Of <(<'Gray, Byte>)>)>
Second frame, at time t + dt
Type: array<System.Drawing..::..PointF>[]()[][]
Array of points for which the flow needs to be found
Type: System.Drawing..::..Size
Size of the search window of each pyramid level
Type: System..::..Int32
Maximal pyramid level number. If 0 , pyramids are not used (single level), if 1 , two levels are used, etc
Type: Emgu.CV.Structure..::..MCvTermCriteria
Specifies when the iteration process of finding the flow for each point on each pyramid level should be stopped
Type: array<System.Drawing..::..PointF>[]()[][]%
Array of 2D points containing calculated new positions of input features in the second image
Type: array<System..::..Byte>[]()[][]%
Array. Every element of the array is set to 1 if the flow for the corresponding feature has been found, 0 otherwise
Type: array<System..::..Single>[]()[][]%
Array of double numbers containing difference between patches around the original and moved points

See Also