网络公司建网站,一个网站的优势有哪些,ui网页设计是什么,wordpress效果这两种方法在旋转图像时#xff0c;可能会产生一些不同的效果#xff1a;
rotate_image_new()旋转后的图像完全包含旋转前的内容#xff0c;并且填充边界尽可能小
rotate_image() 保持原始图像的大小#xff0c;并根据填充选项决定是否填充边界为白色。如果 if_fill_whit…这两种方法在旋转图像时可能会产生一些不同的效果
rotate_image_new()旋转后的图像完全包含旋转前的内容并且填充边界尽可能小
rotate_image() 保持原始图像的大小并根据填充选项决定是否填充边界为白色。如果 if_fill_white 参数为 True则填充边界为白色否则边界将保持原始图像的值。这种方法可以更快速地旋转图像但可能会导致旋转后的图像包含额外的空白区域或丢失部分图像信息。 def rotate_image_new(image, degree):旋转图片角度from math import *# dividing height and width by 2 to get the center of the imageheight, width image.shape[:2]heightNew int(width * fabs(sin(radians(degree))) height * fabs(cos(radians(degree))))widthNew int(height * fabs(sin(radians(degree))) width * fabs(cos(radians(degree))))matRotation cv2.getRotationMatrix2D((width / 2, height / 2), degree, 1)matRotation[0, 2] (widthNew - width) / 2 # 重点在这步目前不懂为什么加这步matRotation[1, 2] (heightNew - height) / 2 # 重点在这步imgRotation cv2.warpAffine(image, matRotation, (widthNew, heightNew), borderValue(255, 255, 255))return imgRotationdef rotate_image( image, angle,if_fill_white False):顺时针旋转# dividing height and width by 2 to get the center of the imageheight, width image.shape[:2]# get the center coordinates of the image to create the 2D rotation matrixcenter (width / 2, height / 2)# using cv2.getRotationMatrix2D() to get the rotation matrixrotate_matrix cv2.getRotationMatrix2D(centercenter, angleangle, scale1)# rotate the image using cv2.warpAffineif not if_fill_white:rotated_image cv2.warpAffine(srcimage, Mrotate_matrix, dsize(width, height) )else:color (255, 255) if len(image.shape)2 else (255, 255,255)rotated_image cv2.warpAffine(srcimage, Mrotate_matrix, dsize(width, height), borderValuecolor)return rotated_image