图像调整大小是指图像的缩放比例。在许多图像处理以及机器学习应用程序中, 缩放非常方便。它有助于减少图像中的像素数量, 并且具有多个优点, 例如它可以减少训练神经网络的时间, 因为图像中的像素数量越多, 输入节点的数量越多, 这反过来又增加了模型的复杂性。
它还有助于放大图像。很多时候, 我们需要调整图像的大小, 例如, 将其推开或放大以满足尺寸要求。 OpenCV为我们提供了几种用于调整图像大小的插值方法。
调整大小的插值方法的选择–
- cv2.INTER_AREA:在需要缩小图像时使用。
- cv2.INTER_CUBIC:这很慢, 但效率更高。
- cv2.INTER_LINEAR:主要在需要缩放时使用。这是OpenCV中的默认插值技术。
下面是调整大小的代码。
import cv2
import numpy as np
import matplotlib.pyplot as plt
% matplotlib qt
# This is a magic command to display in an external window
image = cv2.imread( "C://gfg//tomatoes.jpg" , 1 )
# Loading the image
half = cv2.resize(image, ( 0 , 0 ), fx = 0.1 , fy = 0.1 )
bigger = cv2.resize(image, ( 1050 , 1610 ))
stretch_near = cv2.resize(image, ( 780 , 540 ), interpolation = cv2.INTER_NEAREST)
Titles = [ "Original" , "Half" , "Bigger" , "Interpolation Nearest" ]
images = [image, half, bigger, stretch_near]
count = 4
for i in range (count):
plt.subplot( 2 , 2 , i + 1 )
plt.title(Titles[i])
plt.imshow(images[i])
plt.show()
输出如下:
注意:使用时要记住的一件事cv2.resize()函数的作用是, 用于确定新图像大小的元组(在这种情况下为(1050, 1610))遵循与预期(高度, 宽度)不同的顺序(宽度, 高度)。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。