【发布时间】:2013-08-13 20:26:49
【问题描述】:
我将图像的一部分复制到新图像:
bigImage.ROI = SomeRectangle;
Emgu.CV.Image<Emgu.CV.Structure.Rgb, byte> roiImage = bigImage.Copy();
现在roiImage.Cols==roiImage.Width==1 和roiImage.Rows==roiImage.Height==106;但是roiImage.Data 的大小是[106,4,3]。所以图片的宽度不等于数据的第二维。
为什么会这样?
【问题讨论】:
-
也许该宽度实际上是图像步幅,其中行必须对齐到 4 字节边界(增加填充到最近的 4 字节)。看起来
Emgu.CV.Image包含一个内部System.Drawing.Bitmap,该报告的大小是多少? -
行如何对齐?附加到最后还是包围?
-
在每一行的末尾填充,以匹配各种 Windows API 的要求(例如 DIB 格式)。