最近做课题的时候需要对压缩视频中运动向量幅值和相位做统计。一直以来都是都是采用OpenCV做图像处理和视频分析。自然而然的想到了calcHist这个函数。
通过查看函数API,欣然得发现,刚好有函数原型为:
void calcHist(const Mat* images, int nimages, const int* channels, InputArray mask, OutputArray hist, int dims, const int* histSize, const float** ranges, bool uniform=true, bool accumulate=false );
以为这正是我要找的东西。然而通过尝试一番才发现,不能完成我想要的。虽然第一个参数传入的是图像指针,但是第二个参数即便是取大于1的数,结果还是仅仅统计一幅图像(严格地说是一个plane)。这不是我要的。而且,C++接口的Mat是一个类,平时很少用到Mat*。Mat 通常的使用方法都是得到引用,很少用指针。而我