LEADTOOLS Multimedia SDK是一款功能强大的音频处理 / 视频处理控件,可创建具有专业水准的高品质的多媒体应用程序。您可以使用LEADTOOLS Multimedia SDK创建具有专业水准的高品质的多媒体应用程序。
试用版
计算机视觉是人工智能的一个领域,可训练计算机解释和理解视觉世界。借助摄像机和视频中的数字图像以及深度学习模型,机器可以准确地识别和分类对象,然后对它们“看到”的内容做出反应。LEADTOOLS建立在将近30年的编程和已获专利的AI算法的基础之上,这些算法处理对图像和视频的理解。在将计算机视觉付诸实践时,我们已为您服务!
LEAD运动检测过滤器提供了一个用户界面,您可以将其添加到您的应用中,该界面用于更改过滤器的属性。它允许您更改灵敏度,调整对象大小等。
下载项目!
现在让我们看一下代码!
要查看完整的应用程序,请从上面提供的链接下载程序。下面显示的代码是有关初始化和使用LEADTOOLS回调过滤器以及运动检测过滤器的相关信息。
在项目中创建一个新类,并将其命名为MtnDtCallback。添加以下代码。
public class MtnDtCallback : ILMVMtnDetUserCallback{ public System.Windows.Forms.ListBox LstBx; public MotionFrameClass mtnClass = new MotionFrameClass(); public int CrtFrame = 0; public void MtnDtCallbackfnc() { } ~MtnDtCallback() { } public int CallbackProc(int lEvent, int pFrame, int lWidth, int lHeight, int lBitCount, int lSize, bool bTopDown) { if (lEvent == (int)LMVMtnDetLib.FrameTypeConstants.FRAME_TYPE_STARTMOTION) { mtnClass.Started = true; mtnClass.StartFrame = CrtFrame; } if (lEvent == (int)LMVMtnDetLib.FrameTypeConstants.FRAME_TYPE_STARTSTILL) { if (mtnClass.Started) { mtnClass.EndFrame = CrtFrame - 1; String x = mtnClass.StartFrame.ToString() + "-" + mtnClass.EndFrame.ToString(); LstBx.Items.Add(x); mtnClass.Started = false; mtnClass.StartFrame = 0; mtnClass.EndFrame = 0; } } CrtFrame = CrtFrame + 1; return (int)MtnCalBkErrConstants.MTNCALBK_ERR_SUCCESS; } public class MotionFrameClass { public bool Started = false; public Int64 StartFrame = 0; public Int64 EndFrame = 0; }}
现在,您将要创建一个新表单并将其命名为ConvertForm。在这里,您将找到启动运动检测的代码。
convertCtrl1.Preview = true;convertCtrl1.Progress += new Leadtools.Multimedia.ProgressEventHandler(convertCtrl1_Progress);convertCtrl1.SourceFile = SrcFile;convertCtrl1.TargetFormat = TargetFormatType.NULL;mtnCllbck = new MtnDtCallback();mtnCllbck.LstBx = LstBox;if ((convertCtrl1.AllowedStreams & StreamFormatType.Video) == StreamFormatType.Video){ Processor mtnDet = convertCtrl1.VideoProcessors.MotionDetection; convertCtrl1.SelectedVideoProcessors.Add(mtnDet); motion = convertCtrl1.GetSubObject(ConvertObject.SelVideoProcessor) as LMVMtnDetLib.ILMVMt motion.CallbackObj = mtnCllbck; motion.MinStillTime = 1000; motion.Interval = 0; motion.AutoStart = true; motion.EnableRegion = false;}convertCtrl1.StartConvert();motion.StartDetection();
该项目将创建一个已处理的所有移动的列表。双击列表中的一个帧范围,然后将播放该范围的帧,以便您可以看到移动。

本教程内容就是这样了,感兴趣的朋友敬请期待后续内容~
相关内容推荐:
LEADTOOLS系列教程>>>
想要购买该产品正版授权,或了解更多产品信息请点击“咨询在线客服”
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!