Cảm ơn bạn đã ghé thăm website của chúng tôi. Chúng tôi sử dụng các cookie thiết yếu để giúp chúng tôi hiểu và nâng cao trải nghiệm người dùng. Bằng cách nhấp vào “Chấp nhận”, bạn đồng ý với việc sử dụng TẤT CẢ các cookie
Chấp nhận Chính sách bảo mậtThư viện xử lý hình ảnh Gối [PIL] của Python cung cấp Image.crop[]
để cắt bỏ một phần diện tích của hình ảnh
Bài viết này mô tả các nội dung sau với mã mẫu
- cây trồng bình thường
- Chỉ định khu vực bên ngoài
- Cắt trung tâm của hình ảnh
- Cắt hình vuông lớn nhất từ hình chữ nhật
Vui lòng xem bài viết sau để biết cách cài đặt và sử dụng cơ bản Gối [PIL]
- Cách sử dụng Gối [PIL. Thư viện hình ảnh Python]
Sử dụng resize[]
để thay đổi kích thước toàn bộ hình ảnh thay vì cắt bỏ một phần của hình ảnh và sử dụng
im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
0 để tạo hình ảnh trong suốt bằng cách cắt bỏ một hình dạng không phải hình chữ nhật [chẳng hạn như hình tròn]- Thay đổi kích thước hình ảnh bằng Python, Gối
- Tạo ảnh png trong suốt với Python, Gối [putalpha]
Sử dụng cắt để cắt hình ảnh được đại diện bởi mảng NumPy
im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
1- Xử lý ảnh với Python, NumPy
Nhập
im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
2 từ im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
3 và mở hình ảnh mục tiêufrom PIL import Image
im = Image.open['data/src/astronaut_rect.bmp']
nguồn.
Liên kết được tài trợ
cây trồng bình thường
Đặt vùng cắt xén với
im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
4Tọa độ trên cùng bên trái tương ứng với
im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
5 và tọa độ dưới cùng bên phải tương ứng với im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
6. Khu vực được cắt xén là im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
7 và im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
8 và không bao gồm các pixel của im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
9 vàim.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
0Hãy cẩn thận đừng quên rằng
im.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
1 yêu cầu im.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
2im_crop = im.crop[[60, 20, 400, 200]]
im_crop.save['data/dst/astronaut_pillow_crop.jpg', quality=95]
nguồn.
Nếu bạn chỉ muốn lưu ảnh đã cắt mà không sử dụng cho các thao tác khác, bạn có thể viết trong một dòng
im.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
nguồn.
Chỉ định khu vực bên ngoài
Ngay cả khi phần bên ngoài của hình ảnh được đặt trong vùng cắt xén, lỗi vẫn không xuất hiện và hình ảnh được hiển thị bằng màu đen
im_crop_outside = im.crop[[200, 150, 600, 360]]
im_crop_outside.save['data/dst/astronaut_pillow_crop_outside.jpg', quality=95]
nguồn.
Liên kết được tài trợ
Cắt trung tâm của hình ảnh
Nếu bạn muốn cắt trung tâm của hình ảnh thành bất kỳ kích thước nào, thuận tiện để xác định chức năng sau
def crop_center[pil_img, crop_width, crop_height]:
img_width, img_height = pil_img.size
return pil_img.crop[[[img_width - crop_width] // 2,
[img_height - crop_height] // 2,
[img_width + crop_width] // 2,
[img_height + crop_height] // 2]]
nguồn.
ví dụ sử dụng
im_new = crop_center[im, 300, 150]
im_new.save['data/dst/astronaut_pillow_crop_center.jpg', quality=95]
nguồn.
Cắt hình vuông lớn nhất từ hình chữ nhật
Khi tạo một hình ảnh thu nhỏ, bạn có thể cần phải cắt một hình vuông càng lớn càng tốt từ hình ảnh hình chữ nhật
Xác định hàm cắt một hình vuông có cạnh ngắn từ tâm của hình chữ nhật
Sử dụng thuộc tính
im.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
3 để lấy chiều cao và chiều rộng của hình ảnh và im.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
4 để lấy hình ảnh ngắn hơn. Hàm im.crop[[60, 20, 400, 200]].save['data/dst/astronaut_pillow_crop.jpg', quality=95]
5 được xác định ở trên được sử dụng