将图像裁剪为特定比例的算法

mot*_*sch 5 algorithm

我需要一个算法,给定图像的宽度、高度和目标比率,将计算从图像两侧剃掉的像素数以达到该比率,该比率在图像区域中具有最小的变化。

如何实现这样的算法?

编辑

对不起,我原来的问题不一致;我已经修改了它。

Sva*_*nte 6

  1. 将比率转化为简化形式,使 gcd(ratio_width, ratio_height) = 1。
  2. 计算 floor(width / ratio_width) 和 floor(height / ratio_height)。你的因素是这两个中的最小值。
  3. 将 ratio_width 和 ratio_height 乘以该因子以获得新的图像尺寸。
  4. 消除差异。