旋转图像时,例如使用 imrotate(),除非缩小尺寸,否则输出角会出现空白三角形。 三角形是输出图像中对应于输入图像边界外区域的部分。 此函数使用 imrotate() 围绕其中心旋转图像,然后充分裁剪结果以移除三角形。 当然,原始图像角落的一些数据丢失了。 默认情况下,输出具有最大可能的区域(即像素数)并且裁剪是对称的,因此输出的中心位于输入图像的中心。 在这种情况下,该函数采用与 imrotate() 相同的参数。 可选地,输出的纵横比可以设置为给定值,或者与输入的纵横比相同。 它也可以设置为输出的角都位于输入的旋转侧,尽管这并不总是可行的。 一般来说,如果设置了纵横比,裁剪后的图像将不会有最大可能的区域。 当输出的位置没有完全约束时,它可以选择通过单个参数进行调整,该参数设置输出中心在旋转输入的长轴上的位置。 请注意,如果您使用的是早于 R2013b 的 MATLAB 版本,则需