python裁剪照片
时间: 2023-11-14 15:12:06 浏览: 36
Python可以利用Pillow或OpenCV两种方式来实现图片裁剪。其中,使用Pillow进行裁剪的代码如下所示:
```
from PIL import Image
img = Image.open("./data/cut/thor.jpg")
cropped = img.crop((0, 0, 512, 128)) # (left, upper, right, lower)
cropped.save("./data/cut/pil_cut_thor.jpg")
```
需要注意的是,裁剪时需要指定裁剪区域的左上角和右下角坐标。如果需要批量裁剪多个区域,可以使用for循环来实现。
另外,使用OpenCV进行裁剪的代码也非常简单,可以参考以下代码:
```
import cv2
img = cv2.imread("./data/cut/thor.jpg")
cropped = img[0:128, 0:512] # (y1:y2, x1:x2)
cv2.imwrite("./data/cut/opencv_cut_thor.jpg", cropped)
```
需要注意的是,OpenCV中裁剪时需要指定裁剪区域的左上角和右下角坐标,但是坐标的顺序与Pillow不同。同时,OpenCV读取的图片格式为BGR,而不是常见的RGB格式,因此在保存裁剪后的图片时需要使用cv2.imwrite()函数。
相关问题
python裁剪图片
在Python中,可以使用Pillow库或OpenCV库来裁剪图片。
使用Pillow库进行裁剪的代码如下所示:
```python
from PIL import Image
img = Image.open("image.jpg")
cropped = img.crop((x1, y1, x2, y2)) # (left, upper, right, lower)
cropped.save("cropped_image.jpg")
```
其中,`x1`和`y1`表示裁剪区域的左上角坐标,`x2`和`y2`表示裁剪区域的右下角坐标。
使用OpenCV库进行裁剪的代码如下所示:
```python
import cv2
img = cv2.imread("image.jpg")
cropped = img\[y1:y2, x1:x2\] # 裁剪坐标为\[y1:y2, x1:x2\]
cv2.imwrite("cropped_image.jpg", cropped)
```
同样,`x1`和`y1`表示裁剪区域的左上角坐标,`x2`和`y2`表示裁剪区域的右下角坐标。
请注意,以上代码中的`image.jpg`是待裁剪的图片路径,`cropped_image.jpg`是裁剪后保存的图片路径。你可以根据自己的需求修改这些路径。
#### 引用[.reference_title]
- *1* *3* [Python实现图片裁剪的两种方式——Pillow和OpenCV](https://blog.csdn.net/hfutdog/article/details/82351549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [如何用python裁剪图片](https://blog.csdn.net/m0_59485658/article/details/123808484)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
python 裁剪图片
可以使用Pillow库中的Image模块来裁剪图片。具体操作可以参考以下代码:
```python
from PIL import Image
# 打开图片
img = Image.open('example.jpg')
# 裁剪图片
crop_img = img.crop((100, 100, 300, 300)) # 左上角坐标为(100, 100),右下角坐标为(300, 300)
# 保存裁剪后的图片
crop_img.save('crop_example.jpg')
```
注意:在使用Pillow库前,需要先安装该库。可以使用pip命令进行安装:
```
pip install Pillow
```