什么是裁剪?
裁剪是从摄影或插图图像中去除不需要的外部区域。该过程通常包括去除图像的某些外围区域,以从图片中去除多余的垃圾,改善其取景,改变纵横比,或使主题与背景突出或分离。
我们将使用 OpenCV-python (cv2)的这些函数,
imread():此函数就像它采用了文件的绝对路径并读取了整个图像一样,在读取了整个图像之后,它返回给我们图像,并将该图像存储在变量中。
imshow():此功能将显示一个窗口(具有指定的窗口名称),其中包含由 imread() 功能。
shape:该函数将返回高度,宽度,和层的图像的
让我们举个例子
list a=[1,2,3,4,5,6,7,8,9] 现在,我只想要4到8之间的元素 (包括4和8),所以我们要做的是: print(a[3:8]) 结果会是 : [4,5,6,7,8]
# 导入模块 import cv2 img=cv2.imread("/home/abhinav/PycharmProjects/untitled1/a.jpg") # 借助读取图像 # (指定绝对路径) # Imread ()函数,并将其存储在变量 img 中 cv2.imshow("Original Image",img) # 显示原始图像窗口 # 命名原始图片 # with the help of imshow() function height,width=img.shape[:2] # 在帮助下存储高度和宽度 # 形状函数作为形状返回我们 # three things(height,width,layer) in the form of list # 但是我们只想要高度和宽度 start_row,start_col=int(width*0.25),int(height*0.25) end_row,end_col=int(width*0.75),int(height*0.75) # start_row和start_col是坐标 # 从我们将开始种植的地方 # end_row和end_col是结束坐标 # 我们停在哪里 cropped=img[start_row:end_row,start_col:end_col] # 使用idexing方法裁剪 # 图像以这种方式 cv2.imshow("Cropped_Image",cropped) # 使用 imshow ()函数显示 # 另一个窗口 # 裁剪后的图片包含 # 图片的一部分 cv2.waitKey(0)cv2.destroyAllWindows()
输出:
您可以看到“裁剪的图像”和“原始图像”(裁剪的过程像是0.25到0.75,行和0.25到0.75列一样,您可以更改数字)。