如何获取和操作CBitmap信息

时间:2015-01-28 11:11:58

标签: c++ mfc multidimensional-array dimension cbitmap

我是c ++的新手,而不是MFC那么我的问题请不要......我一直在大学里使用MatLab进行图像处理 这是问题:

我已经阅读了.bmp图像并将其存储到CBitmap对象中,但我不知道如何从像素中获取信息(宽度,长度)。 在matlab中,我习惯在读取图像时获得矩阵,并且我可以轻松地将滤镜应用于此矩阵。

图像读起来像

[1   3  123  13]
[12  33 34   14]
[131 46 32   67]

我可以读取单个像素的值并进行算术运算来改变它。 我可以使用CBitmap对象执行相同的操作吗? 或者我应该将图像读入2D阵列之类的东西吗?

1 个答案:

答案 0 :(得分:1)

您的第一个问题很明确:如何获取图像的尺寸(以像素为单位) 请试试这个:

CBitmap cbmp;
//load your bitmap here into the cbmp 
BITMAP aBmp;
cbmp.GetBitmap(&aBmp);
int imgWidthInPixels = aBmp.bmWidth;
int imgHeightInPixels = aBmp.bmHeight;