我正在做一个名为用户启动的实时对象跟踪系统的项目.在这里,我想在项目中发生什么:
1)从网络摄像头连续流.
2)使用鼠标,用户可以围绕感兴趣的对象绘制正方形.
3)然后从那里开始,正方形与感兴趣的物体一起移动.因此,跟踪对象移动的每个位置因此对象跟踪.
目前的进展
我使用dshownet(DirectShow的.NET包装器)从网络摄像头获取输入.我正在将视频分割为帧.我有4种方法来做这个项目:
技术1
>有一个保存的视频
>我加载它.
>当视频运行时,我暂停(使用暂停按钮)它,在特定场景并在对象上绘制正方形.
>当我按下播放按钮时,方块将与对象一起移动,没有/ 5秒处理时间[或]我将给应用程序一些处理时间(例如3分钟),然后它将从该点开始播放跟踪发生.
技术2
>有一个保存的视频
>我加载它.
>当视频正在运行时,我不会暂停它,但会快速在对象上绘制一个正方形(当对象仍处于某个点时).
>然后在没有处理时间的情况下跟踪对象. [或]使用一些处理时间(10秒延迟)使文件播放更长时间.
技术3
>我从网络摄像头输入1分钟.
>将该视频保存到文件中
>并执行方式1或方式2
技术4 – (显然这看起来更难)
>连续从网络摄像头获取输入
>当物体没有移动时(例如当一个人坐在椅子上时),在物体周围画一个正方形,没有任何暂停
>然后通过移动方块和物体来显示跟踪,没有处理时间[或] 2秒的轻微处理时间,使得延迟不明显.
要跟踪的对象: –
基本上我可以跟踪任何东西,因为我用鼠标绘制
>我打算使用整个身体(但如果这很麻烦..下一个选项)
>我会尝试跟踪个人的面部(显然是用鼠标绘制区域).
编码时间:1个半月
进展:分裂时仍然出现错误. (有人建议先开始拆分保存的视频,我现在正在尝试这样做)
我的问题
1)我可以在1个半月的时间框架内实施哪种技术(四个中的哪一个)?
2)要编码,java是一些对此有用的java框架还是带有emgucv / AForge.net / Dshownet的C#.net [顺便说一句,我在Java中的知识很好而在C#.net中不太好?]
提前致谢