实时系统需要快速&高效平台。我想知道哪种组合适合实时图像处理:OpenCV-Python,OpenCV-MVStudio(C ++),OpenCV-Matlab或OpenCV-Java?我读过CUDA,但如果我不想在项目中使用CUDA,有没有办法开发快速系统?
答案 0 :(得分:0)
我可以评论MATLAB,Python和C ++,但不能评论Java:
要在MATLAB中运行OpenCV,您需要的内容与mexopencv(http://kyamagu.github.io/mexopencv/)类似。这将许多OpenCV函数(不包括所有函数)编译成MATLAB可以读取和使用的mex文件。它可以工作,但可能不是实时应用程序的最快解决方案。但它对于原型设计很有用。
在Python中运行OpenCV更容易,运行效率更高,尽管它仍然是间接的"因为它需要一个Python包装器(因为OpenCV是用优化的C / C ++编写的)。
实时算法最有效的解决方案是使用OpenCV的本地语言,即C ++,避免语言之间的翻译步骤。
CUDA或一般的并行处理是所有这些平台的选项。然而,它是否有利于代码的速度在很大程度上取决于项目本身。通常并行化可以使它运行得更慢而不是更快。请查看https://en.wikipedia.org/wiki/Parallel_slowdown了解相关信息。
希望这有帮助!