Python如何给图片加边框
时间: 2024-02-13 19:01:50 浏览: 123
可以使用Pillow库来给图片加边框。以下是一个示例代码:
```python
from PIL import Image, ImageOps
# 打开图片
img = Image.open("example.jpg")
# 设置边框的大小和颜色
border_size = 20
border_color = (255, 255, 255) # 白色
# 添加边框
img_with_border = ImageOps.expand(img, border=(border_size, border_size), fill=border_color)
# 保存图片
img_with_border.save("example_with_border.jpg")
```
在上述代码中,我们首先打开了一张图片,然后设置了边框的大小和颜色。我们使用 `ImageOps.expand()` 方法来添加边框,该方法需要传入原始图片对象,边框大小和颜色。最后,我们将添加了边框的图片保存到了一个新的文件中。
相关问题
如何使用Python给图片加边框
要给图像添加边框,你可以使用OpenCV库来实现。下面是一个使用OpenCV的示例代码:
```python
import cv2
import numpy as np
# 读入图像
img = cv2.imread("image.jpg")
# 设置边框参数
top, bottom, left, right = 10, 10, 10, 10
border_color = [255, 0, 0] # 蓝色边框
# 添加边框
img_with_border = cv2.copyMakeBorder(img, top, bottom, left, right, cv2.BORDER_CONSTANT, value=border_color)
# 显示结果
cv2.imshow("img_with_border", img_with_border)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,我们首先读入图像,然后设置了边框的上、下、左、右宽度(以像素为单位),以及边框的颜色。然后,我们使用`cv2.copyMakeBorder()`函数来为图像添加边框。最后,使用`cv2.imshow()`函数显示添加了边框的图像。
请注意,边框的宽度和颜色可以根据你的需求进行调整。
Python去掉图片黑色边框
要去掉图片的黑色边框,可以使用以下代码:
```python
from PIL import Image
def remove_black_border(image_path):
image = Image.open(image_path)
width, height = image.size
pixels = image.load()
top = 0
bottom = height
left = 0
right = width
# 找到顶部边界
for i in range(height):
for j in range(width):
if pixels[j, i] != (0, 0, 0):
top = i
break
if top != 0:
break
# 找到底部边界
for i in range(height-1, -1, -1):
for j in range(width):
if pixels[j, i] != (0, 0, 0):
bottom = i+1
break
if bottom != height:
break
# 找到左边界
for i in range(width):
for j in range(top, bottom):
if pixels[i, j] != (0, 0, 0):
left = i
break
if left != 0:
break
# 找到右边界
for i in range(width-1, -1, -1):
for j in range(top, bottom):
if pixels[i, j] != (0, 0, 0):
right = i+1
break
if right != width:
break
new_image = image.crop((left, top, right, bottom))
new_image.save('result.png')
```
使用该函数 `remove_black_border` 可以去掉图片的黑色边框。你需要将图片的路径作为参数传递给该函数。函数将裁剪掉边框后的图片保存为 "result.png"。
阅读全文