CudaInvokeCalc Method (INvidiaOpticalFlow, IInputArray, IInputArray, IInputOutputArray, Stream, IInputArray, IOutputArray) |
http://www.emgu.com
Calculates Optical Flow using NVIDIA Optical Flow SDK.
NVIDIA GPUs starting with Turing contain a dedicated hardware accelerator for computing optical flow vectors between pairs of images.
The optical flow hardware accelerator generates block-based optical flow vectors.
The size of the block depends on hardware in use, and can be queried using the function getGridSize().
The block-based flow vectors generated by the hardware can be converted to dense representation(i.e.per-pixel flow vectors) using upSampler() helper function, if needed.
The flow vectors are stored in CV_16SC2 format with x and y components of each flow vector in 16-bit signed fixed point representation S10.5.
Namespace:
Emgu.CV.Cuda
Assembly:
Emgu.CV.Platform.NetStandard (in Emgu.CV.Platform.NetStandard.dll) Version: 4.3.0.3890
Syntaxpublic static void Calc(
this INvidiaOpticalFlow nvidiaOpticalFlow,
IInputArray inputImage,
IInputArray referenceImage,
IInputOutputArray flow,
Stream stream = null,
IInputArray hint = null,
IOutputArray cost = null
)
<ExtensionAttribute>
Public Shared Sub Calc (
nvidiaOpticalFlow As INvidiaOpticalFlow,
inputImage As IInputArray,
referenceImage As IInputArray,
flow As IInputOutputArray,
Optional stream As Stream = Nothing,
Optional hint As IInputArray = Nothing,
Optional cost As IOutputArray = Nothing
)
public:
[ExtensionAttribute]
static void Calc(
INvidiaOpticalFlow^ nvidiaOpticalFlow,
IInputArray^ inputImage,
IInputArray^ referenceImage,
IInputOutputArray^ flow,
Stream^ stream = nullptr,
IInputArray^ hint = nullptr,
IOutputArray^ cost = nullptr
)
[<ExtensionAttribute>]
static member Calc :
nvidiaOpticalFlow : INvidiaOpticalFlow *
inputImage : IInputArray *
referenceImage : IInputArray *
flow : IInputOutputArray *
?stream : Stream *
?hint : IInputArray *
?cost : IOutputArray
(* Defaults:
let _stream = defaultArg stream null
let _hint = defaultArg hint null
let _cost = defaultArg cost null
*)
-> unit
Parameters
- nvidiaOpticalFlow
- Type: Emgu.CV.CudaINvidiaOpticalFlow
The nvidia optical flow object - inputImage
- Type: Emgu.CVIInputArray
Input image - referenceImage
- Type: Emgu.CVIInputArray
Reference image of the same size and the same type as input image. - flow
- Type: Emgu.CVIInputOutputArray
A buffer consisting of inputImage.Size() / getGridSize() flow vectors in CV_16SC2 format. - stream (Optional)
- Type: Emgu.CV.CudaStream
Stream for the asynchronous version. - hint (Optional)
- Type: Emgu.CVIInputArray
Hint buffer if client provides external hints. Must have same size as flow buffer. Caller can provide flow vectors as hints for optical flow calculation. - cost (Optional)
- Type: Emgu.CVIOutputArray
Cost buffer contains numbers indicating the confidence associated with each of the generated flow vectors. Higher the cost, lower the confidence. Cost buffer is of type CV_32SC1.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
INvidiaOpticalFlow. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
See Also