我正在研究机器人视觉系统,它的主要目的是检测物体,我想选择其中一个库(CImg,OpenCV),我对它们都有所了解。
我使用的机器人有Linux,1GHz CPU和1G内存,我使用C ++,图像大小为320p。
我希望在每秒25帧中的20帧附近进行实时图像处理。 在你看来哪个库更强大l尽管我已经测试了它们并且它们具有相同的处理时间,但打开cv稍微好一点,我认为这是因为我使用带有开放cv代码的指针。
请分享您的想法和理由。
感谢。
答案 0 :(得分:5)
我认为,当您集成OpenCV与IPP时,您可能会获得最佳性能。
这是另一个参考http://experienceopencv.blogspot.com/2011/07/speed-up-with-intel-integrated.html
此外,如果你冻结了运行完美的算法,通常你可以隔离你的算法并按照你的方式进行严格的优化(例如内存优化,移植到程序集等),这些可能还没有准备好使用。
答案 1 :(得分:1)
这实际上取决于你想要做什么(你想要检测什么样的物体,准确性,你正在使用什么算法等等)以及你有多少时间。如果是通用计算机视觉/图像处理,我会坚持使用OpenCV。正如Dipan所说,请考虑进一步优化。根据我对计算机视觉优化的经验,瓶颈通常在于内存互连带宽(或内存本身),因此您可能需要以周期(计算)进行交易以节省通信。理解算法真的很好,以进一步优化算法(与编译器相比,有时可以带来巨大的改进)。