欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

cv resize python,cv2resize函数

终极管理员 知识笔记 125阅读

目录 常用插值缩放方法缩放示例代码总结

常用插值缩放方法

cv2.resize()函数中的interpolation参数指定了图像缩放时使用的插值方法。以下是常用的插值方法

cv2.INTER_NEAREST最近邻插值。该方法通过选择最接近目标像素的原始像素来进行插值。它是最快速的插值方法但可能会导致锯齿状边缘效果。

cv2.INTER_LINEAR双线性插值。该方法通过使用原始像素的线性组合来计算目标像素的值。它比最近邻插值提供了更平滑的结果但在缩小图像时可能会丢失细节。

cv2.INTER_CUBIC双三次插值。该方法在双线性插值的基础上使用了更多的邻近像素以获得更高质量的缩放结果。它比双线性插值计算量更大但效果更好。

cv2.INTER_LANCZOS4Lanczos插值。该方法使用Lanczos算法来计算目标像素的值。它在缩放图像时提供了更好的保真度但计算量较大。

缩放示例 代码
import osimport cv2# 获取文件路径folder_path  E:/SR_Images/DIV2K_theml/DIV2K_train_HRoutput_path  E:/SR_Images/DIV2K_theml/DIV2K_train_LR_bicubic/X2# 获取文件夹中所有的文件file_list  os.listdir(folder_path)# 遍历文件列表for file_name in file_list:    # 拼接文件路径    file_path  os.path.join(folder_path,file_name)    # 仅处理图像文件    if os.path.isfile(file_path) and file_name.lower().endswith((.png,,jpg,.jpeg,.bmp)):        # 读取图像路径        image  cv2.imread(file_path)        # 获取图像原尺寸        height,width  image.shape[:2]        # 计算缩放后的尺寸        new_heiht  int(height / 2)        new_width  int(width / 2)        # 缩放图像        resized_image  cv2.resize(image,(new_width,new_heiht),interpolationcv2.INTER_CUBIC)  # 例子中使用了双三次插值        # 保存缩放后的图像        output_file  file_name[:-4]  x2.png        cv2.imwrite(os.path.join(output_path,output_file),resized_image)
总结

以上就是使用cv2.resize()函数批量自定义缩放图像尺寸的方法学者根据自己的缩放需求使用对应的缩放参数多多支持谢谢

标签:
声明:无特别说明,转载请标明本文来源!