Nat*_*tiv 9 android opencv ffmpeg video-processing marvin-framework
我正在尝试决定选择哪个库来创建可以过滤视频的应用,例如美化或清晰度.
在我搜索期间,我遇到了两个候选人:OpenCv和FFmpeg,我找到了一个仅适用于FFmpeg的完整框架(所以+1为此).
我无法找到两者之间的完全比较,所以如果有人尝试过它们并且可以发布答案,那将非常有帮助.
编辑:
另一个候选人是Android的Marvin框架(Java项目) - https://code.google.com/p/android-image-filtering/
OpenCV是用于计算机视觉的框架,对您的需求非常有限,因为它需要您自己编写大多数出色的过滤器。不过,它提供了一些技术来模糊图像,改变对比度,转换为灰度,翻转,裁剪,阈值,侵蚀,扩大,调整大小,旋转,隔离颜色,合成以及其他一些东西。为了让您对如何实现过滤器有所了解,我最近使用OpenCV实现了置换贴图过滤器。
FFmpeg也有一些 滤镜,但这是一个跨平台的解决方案,用于记录,转换和流传输音频和视频,这意味着它实际上并没有提供很多滤镜效果。
不过,这两个API都可以在Android上读取视频(文件和来自摄像头的流)并提供对视频帧的访问,因此您可以执行自定义过滤器。
我相信ImageMagick是真正可以帮助您为应用程序带来大量过滤器的技术。请注意,ImageMagick不处理视频,因此您可以在此部分中使用Android的本地API,OpenCV或FFmpeg。以下是在命令行,程序界面或脚本中使用ImageMagick可以处理图像的一些示例: