OpenCV Python 如何为图像添加边框
OpenCV 提供了 cv2.copyMakeBorder() 函数来给图像添加边框。要为图像添加边框,可以按照以下步骤进行:
- 第一步是导入所需的库。在下面的Python示例中,所需的Python库是 OpenCV 。请确保已经安装了它。
-
下一步是使用 cv2.imread() 函数读取输入图像。指定带有图像类型(.jpg或.png)的完整图像路径。
-
为 cv2.copyMakeBorder() 函数指定不同的参数。要指定的不同参数是 src, dst, top, bottom, left, right, borderType 和 value 。
-
调用 cv2.copyMakeBorder() 函数,传递上述指定的参数以添加边框到输入图像。
img1 = cv2.copyMakeBorder(src, top, bottom, left, right, borderType,dst,value)
- 展示带有边框的输出图像。
让我们通过一些Python示例来理解使用OpenCV Python给图像添加边框。
我们将使用此图像作为以下示例中的输入文件-
示例
在这个Python程序中,我们为不同的边添加不同大小的边框-上、下、左、右。我们使用了边框类型 cv2.BORDER_CONSTANT 。
# import required library
import cv2
# read input image
img = cv2.imread('building.jpg')
# set different parameters
src = img
dst = None
top, bottom, left, right = 50, 100, 130, 200
borderType = cv2.BORDER_CONSTANT
value=[255, 255, 0]
# Add borders with above parameters
img1 = cv2.copyMakeBorder(src, top, bottom, left, right,
borderType,dst,value)
# display the image with borders
cv2.imshow("Image with Borders", img1)
cv2.waitKey(0)
cv2.destroyAllWindows()
输出
当你运行以上程序时,它将产生以下 输出 窗口 –
我们给输入图像添加了边界,边界大小为(像素) 上=50,下=100,左=130,右=200 。
示例
在这个程序中,我们为不同的边添加了不同大小的边界 – 上、下、左、右 。我们应用了边界类型 cv2.BORDER_REPLICATE 。
# import required library
import cv2
# read input image
img = cv2.imread('building.jpg')
src = img
dst = None
top, bottom, left, right = 50, 50, 100, 100
borderType = cv2.BORDER_REPLICATE
# add borders
img1 = cv2.copyMakeBorder(src, top, bottom, left, right, borderType,dst)
cv2.imshow("Image with Borders", img1)
cv2.waitKey(0)
cv2.destroyAllWindows()
输出
当你运行上面的程序时,它将在窗口中产生以下的 输出 :
我们在输入图像中添加了边框,边框大小为(像素) 上=50,下=100,左=130, 和 右=200。
注意上面两个示例中使用的边框类型之间的区别。