public void GetImage(CVImage target) { LockForReading(); try { FFrontBuffer.GetImage(target); } finally { ReleaseForReading(); } }
public override void Process() { CVImage swap = FPrevious; FPrevious = FCurrent; FCurrent = swap; FInput.Image.GetImage(TColorFormat.L8, FCurrent); Image<Gray, byte> p = FPrevious.GetImage() as Image<Gray, byte>; Image<Gray, byte> c = FCurrent.GetImage() as Image<Gray, byte>; Image<Gray, float> vx = FVelocityX.GetImage() as Image<Gray, float>; Image<Gray, float> vy = FVelocityY.GetImage() as Image<Gray, float>; OpticalFlow.HS(p, c, UsePrevious, vx, vy, FLambda, new MCvTermCriteria(FIterations)); CopyToRgb(); FOutput.Send(); }
public override void Process() { CVImage swap = FPrevious; FPrevious = FCurrent; FCurrent = swap; FInput.Image.GetImage(TColorFormat.L8, FCurrent); Image<Gray, byte> p = FPrevious.GetImage() as Image<Gray, byte>; Image<Gray, byte> c = FCurrent.GetImage() as Image<Gray, byte>; Image<Gray, float> vx = FVelocityX.GetImage() as Image<Gray, float>; Image<Gray, float> vy = FVelocityY.GetImage() as Image<Gray, float>; OpticalFlow.LK(p, c, FWindowSize, vx, vy); CopyToRgb(); FOutput.Send(); }