2012-04-16 51 views
3

在OpenCV 2.0中,他们从具有独立的图像和矩阵类切换到称为cv::Mat的统一类。那里的设计决定是什么?对我来说,每天都在处理图像和矩阵,他们是非常不同的对象,它们恰好具有共同性:它们都以网格方式访问。然而,在我的脑海里,矩阵是一个矩阵的东西,你可以做y = A*x,其中A是m乘n,x是n乘1,y是m乘1.当A是图像时,这几乎没有意义你会想要做这个操作。合并IplImage和cv :: Mat的设计决定是什么?

合并这些类也会产生需要模板和奇数矩阵类型(如3通道浮点矩阵/图像的CV_32FC3)的令人讨厌的副作用。既然我知道在OpenCV上工作的人并不疯狂,那么设计决定是什么让他们合并图像和矩阵类呢?是代码重用吗?莫名其妙?

+6

这是OpenCV的邮件列表,在那里你可以得到原始开发者分享他们知道这样的决定,这是什么问题。 – karlphillip 2012-04-16 16:37:11

回答

3

主要缺点是你不能重载'*'来进行乘法运算,但我认为你不应该为任何比内建类型更复杂的任何东西重载'*'。

什么是卷积核 - 图像还是矩阵?

你只需要一次学习所有的处理程序/构造函数的功能 - 而不是两套他们

相关问题