openni,opencv,opengl这三个到底是啥有啥关系?做啥用

OpenNi 类似Kinect的SDK,但是里面的很多算法不是开源的,比如实时的human pose estimation, hand tracking。这些算法来自一个叫primesense的公司的middleware,估计也是微软持资,openni只有接口。OpenCV就非常好用,几乎所有CV领域state-of-the-art的算法都有,同时也包括了一些machine learning的常用方法,比如SVM什么的。OpenGL是CG的库,只做过rendering,3D modeling神马的,了解不是很多,但是好像不是很全,至少3D引擎这块用别的库的比较多。
■网友
OpenNi没用过,感觉就是微软Kinect SDK的免费版,用于Kinect体感的编程API。貌似开源,github上有源码。功能上整体看应该没有Kinect SDK好,但跨平台,免费。当然也支持一些类似kinect的产品,详见OpenNi的背后公司primesenseOpenCV主要用于图像处理、图像分析、机器视觉和一些模式识别。内容丰富,使用很广泛。就是一系列的库,实现了处理图像、让机器理解图像内容和利用图像建立3维世界描述的功能。OpenGL就是工业标准的显示API,定义了一系列的函数,调用这些函数就可以来操作显卡,实现画2维3维图片。当然不同的显卡公司,会根据自己的显卡和GPU来具体实现这些函数。关于各种Open标准,可以参见khronos公司,在维护和建立很多多媒体相关标准。
■网友
openni是一个开源sdk,主要是输出三维图的。


    推荐阅读