bmp图片任意矩形区域像素提取算法

bmp图片裁剪大部分都是在水平方向上指定一个矩形区域,然后进行裁剪。有时候我们的需求是在一个bmp图片ABCD内部,指定一个基准点p0(x0,y0)(裁剪区域的中心点),在水平方向上任意旋转θ角度任意一块长度为l,宽度为w的矩形区域A'B'C'D',这是就需要进行像素提取,核心是坐标系的转换。

基本思路:

1.遍历裁剪区域A'B'C'D'中的每一个像素点p'(i,j)。

2.将A'B'C'D'区域中的每一个点通过坐标转换,转换到原始bmp图片上p''(u,v),并获取对应点的像素并保存至buffer中。

3.将buffer中保存的像素信息重新生成一张新的bmp图片,裁剪完成。

如下图所示:


任意矩形区域像素提取算法.PNG

坐标转换核心公式:

for(i=0;i

你可能感兴趣的:(bmp图片任意矩形区域像素提取算法)