Hướng dẫn how do i crop multiple images at once in python? - làm cách nào để cắt nhiều hình ảnh cùng một lúc trong python?

Tôi nghĩ một cái gì đó giống như sau đây là những gì bạn đang tìm kiếm:

Show
import os

from PIL import Image

# Crops the image and saves it as "new_filename"
def crop_image(img, crop_area, new_filename):
    cropped_image = img.crop(crop_area)
    cropped_image.save(new_filename)

# The x, y coordinates of the areas to be cropped. (x1, y1, x2, y2)
crop_areas = [(180, 242, 330, 566), (340, 150, 900, 570)]

image_name = 'download.jpg'
img = Image.open(image_name)

# Loops through the "crop_areas" list and crops the image based on the coordinates in the list
for i, crop_area in enumerate(crop_areas):
    filename = os.path.splitext(image_name)[0]
    ext = os.path.splitext(image_name)[1]
    new_filename = filename + '_cropped' + str(i) + ext

    crop_image(img, crop_area, new_filename)


Chương trình hoạt động bằng cách chụp ảnh đầu vào (

Image.crop(box=None)
0 trong trường hợp này), lặp qua danh sách tọa độ
Image.crop(box=None)
1 đại diện cho các khu vực của hình ảnh được cắt, sau đó chuyển từng hình ảnh cho chức năng
Image.crop(box=None)
2 có trong hình ảnh để được cắt Các tọa độ và tên tệp mới cho hình ảnh được lưu dưới dạng.


Các tệp kết quả được lưu là

Image.crop(box=None)
3 và
Image.crop(box=None)
4 (trong ví dụ này). Nếu bạn muốn cắt nhiều khu vực hơn trong hình ảnh, bạn sẽ cần thêm nhiều bộ dữ liệu dưới dạng
Image.crop(box=None)
1 vào danh sách
Image.crop(box=None)
6. Bạn có thể sử dụng một chương trình như sơn hoặc photshop để có được tọa độ của hình ảnh bạn muốn cắt từ và đến.

Hình ảnh cắt xén là gì?

Cắt hình ảnh là một cách chỉnh sửa ảnh liên quan đến việc loại bỏ một phần của hình ảnh để nhấn mạnh một chủ đề, thay đổi tỷ lệ khung hình hoặc cải thiện khung. Sau đó, bạn có thể điều chỉnh lại một đối tượng hoặc hướng sự chú ý của người xem đến một phần nhất định của ảnh. Xây dựng hình ảnh tự động thực hiện cùng một nhiệm vụ trên một số lượng lớn hình ảnh.

Dưới đây là các thuật ngữ chính liên quan đến việc cắt hình ảnh:

  • Hình chữ nhật trồng trọt - Vùng, được xác định bởi bốn tọa độ, để cắt hình ảnh. Hoạt động cắt xén loại bỏ tất cả các chi tiết bên ngoài hình chữ nhật của cây trồng, cung cấp một hình ảnh được sửa đổi về kích thước hình chữ nhật của cây trồng.— The region, defined by four coordinates, to which to crop the image. The cropping operation removes all the details outside the crop rectangle, delivering a modified image of the crop rectangle’s size.
  • Tỷ lệ khung hình - tỷ lệ của chiều rộng hình ảnh trên chiều cao của nó. Tỷ lệ này được biểu thị bằng hai số được phân tách bằng một đại tràng, ví dụ, 4: 3 hoặc bốn đến ba.— The ratio of the image’s width to its height. This ratio is denoted by two numbers separated by a colon, for example, 4:3 or four-to-three.
  • Pixels - Lưới của các pixel dọc và ngang trong đó các bức ảnh kỹ thuật số được sáng tác. Cắt xén ra một số phần nhất định của hình ảnh, giảm số lượng pixel và thu hẹp kích thước hình ảnh.— The grid of vertical and horizontal pixels of which digital photos are composed. Cropping cuts out certain sections of the image, reducing the number of pixels and shrinking the image size.

Bài viết này bao gồm các chủ đề sau:

  • Hình ảnh cắt xén trong Python với gối
  • Hình ảnh cắt xén bằng python với opencv
  • Thay đổi kích thước và cắt hình ảnh python thông qua tự động hóa với đám mây

Cách cắt hình ảnh trong Python với gối

Một ngã ba của Thư viện hình ảnh Python (PIL), Thư viện Gối cung cấp một cách dễ dàng thông qua chức năng

Image.crop(box=None)
7 để cắt hình ảnh trong Python. Ở đây, cú pháp:

Image.crop(box=None)

Tham số

Image.crop(box=None)
8 chấp nhận một tuple với bốn giá trị của bốn tọa độ cho hình chữ nhật cây trồng: trái, trên, phải và dưới. Hình chữ nhật cây trồng được vẽ trong hình ảnh, mô tả một phần của hình ảnh bạn muốn cắt.
Image.crop(box=None)
9 Trả về một đối tượng
from PIL import Image
0.

Để cắt một hình ảnh với gối:

  1. Nhập Gối Gối Lớp hình ảnh:
    from PIL import Image
  2. Tải một hình ảnh từ hệ thống tệp và, với lớp
    from PIL import Image
    1, chuyển đổi hình ảnh thành một thể hiện của lớp
    from PIL import Image
    2. Thêm
    from PIL import Image
    3 hiển thị hình ảnh trong trình xem bên ngoài.
    img = Image.open('./myimage.png')
    img.show()
  3. Cắt hình ảnh. Giả sử rằng & nbsp; Hình ảnh
    from PIL import Image
    4 là 1.000 × 1.000 pixel, cắt nó thành một hình vuông 500 × 500 pixel ở trung tâm của hình ảnh:
    box = (250, 250, 750, 750)
    img2 = img.crop(box)
  4. Lưu hình ảnh bị cắt, một đối tượng Python được gọi là
    from PIL import Image
    5, vào hệ thống tệp:
    img2.save('myimage_cropped.jpg')
    img2.show()

Lưu ý các vấn đề sau đây là hình ảnh cắt xén với gối:

  • Nội dung-nhận biết cắt xén. Hầu hết các hoạt động cắt xén phụ thuộc vào bối cảnh. Ví dụ, bạn không muốn loại bỏ các phần quan trọng của hình ảnh, nhưng điều đó khó đảm bảo theo chương trình vì hàm crop () không nhạy cảm với nội dung hình ảnh. Most cropping operations depend on the context. For example, you don’t want to remove important parts of the image, but that’s difficult to ensure programmatically because the crop() function is not sensitive to the image content.
  • Cắt xén và thay đổi kích thước. Thông thường, bạn phải thay đổi kích thước và cắt một hình ảnh cùng một lúc. Mặc dù bạn có thể thay đổi kích thước hình ảnh trong Python với một kỹ thuật tương tự, kết hợp cắt xén và thay đổi kích thước có thể trở nên khó khăn, chứ đừng nói đến việc nó thách thức để tạo ra hình ảnh chính xác bạn cần cho thiết kế của mình. Oftentimes, you must resize and crop an image at the same time. Even though you can resize images in Python with a similar technique, combining cropping and resizing can get tricky, let alone that it’s challenging to generate the exact image you need for your design.
  • Quản lý hình ảnh. Một số lượng lớn các hoạt động cây trồng có thể dẫn đến nhiều phiên bản cho mỗi hình ảnh, tất cả sẽ được lưu trữ trên máy chủ. Bên cạnh việc mua thêm không gian lưu trữ, bạn cũng phải đưa ra một quy ước rõ ràng, nhất quán để tạo điều kiện xác định vị trí đúng phiên bản của hình ảnh. Một cách tiếp cận hiệu quả hơn nhiều là chỉ đơn giản là tạo tự động phiên bản cần thiết của hình ảnh mà không lưu tất cả các phiên bản của nó vào hệ thống tệp. A large number of crop operations might lead to multiple versions for each image, all to be stored on the server. Besides procuring extra storage space, you must also put in place a clear, consistent convention to facilitate locating the right version of the image. A much more efficient approach is to simply dynamically generate the required version of the image without saving all its versions to the file system.

Cắt một hình ảnh bằng python với opencv

Python OpenCV là một thư viện có khả năng xác nhận máy tính tiên tiến, đặc biệt là một tập hợp các chức năng để xử lý xử lý và chuyển đổi hình ảnh. Để nhập thư viện OpenCV vào chương trình của bạn, hãy nhập:

import cv2

Ở đây, cú pháp để cắt hình ảnh:

image[start_x:end_x, start_y:end_y]

Điều thú vị là, cú pháp này cắt

from PIL import Image
6 dưới dạng một mảng bằng cách truyền tọa độ chỉ số X và Y bắt đầu và kết thúc cho mỗi phân đoạn. Phần của hình ảnh giữa tọa độ bắt đầu và kết thúc được trả về dưới dạng một đối tượng mảng bị cắt ngắn.

Ví dụ:

import cv2
image = cv2.imread(r"C:\file\path\imagename.png")

y=0
x=0
h=300
w=510
crop_image = image[x:w, y:h]
cv2.imshow("Cropped", crop_image)
cv2.waitKey(0)

Tuyên bố

from PIL import Image
7 mở hình ảnh ở chế độ chỉ đọc. Hàm
from PIL import Image
8 gần phía dưới hiển thị hình ảnh bị cắt.

Thay đổi kích thước và cắt hình ảnh python thông qua tự động hóa với đám mâyMột dịch vụ dựa trên đám mây để quản lý hình ảnh và video, Cloudinary cung cấp gói đăng ký chuyển đổi miễn phí hào phóng. Trong khi trên nền tảng đó, bạn có thể tải lên hình ảnh của mình, áp dụng các hiệu ứng tích hợp, bộ lọc và sửa đổi.Bạn cũng có thể thay đổi kích thước hình ảnh thông qua tự động hóa, tập trung vào các yếu tố quan trọng nhất với AI hoặc điều chỉnh chúng với thiết kế trang web của bạn bằng cách chỉ định tỷ lệ chiều rộng, chiều cao và khung hình là vòng loại cho các trường hợp hình ảnh mới. Cloudinary sau đó tự động thực hiện các nhiệm vụ thay đổi kích thước và cắt xén để đáp ứng các tiêu chí. Không có nỗ lực thủ công được yêu cầu.Chụp ảnh 1.200 × 1.200 pixel này: Thay đổi kích thước nó thành 200 × 200 pixel với kết quả của cây trồng, tỷ lệ, lấp đầy và pad trong các hình ảnh sau:Ảnh gốc (adsbygoogle = window.adsbygoogle || []).push({}); Tập trung vào mô hình trong cây trồng chân dungPhát hiện khuôn mặt cho cây thu nhỏTự động xác định những gì cần giữ trong một loại cây BannerĐể tự động hóa kích thước hình ảnh và cắt xén trên đám mây:Đăng ký một tài khoản đám mây miễn phí.Cài đặt SDK Python.Đặt tiêu chí chuyển đổi cho các ví dụ trên: # Focus on the model in a portrait crop. CloudinaryImage("docs/model.jpg").image(gravity="person", height=600, width=450, crop="fill") # Detect the face for a thumbnail crop. CloudinaryImage("docs/model.jpg").image(gravity="face", height=250, width=250, crop="thumb") # Crop to a banner, automatically focusing on a region of interest. CloudinaryImage("docs/model.jpg").image(gravity="auto", height=150, width=600, crop="fill")

Bạn có thể hình ảnh cây trồng số lượng lớn?

Tất nhiên bạn có thể!Hình ảnh cắt xén hàng loạt dễ dàng như khi sử dụng công cụ cắt hình ảnh hàng loạt.! Batch cropping images is as easy as it gets when using right batch image cropping tool.

Chúng ta có thể cắt hình ảnh trong Python không?

Phương pháp crop () được sử dụng để cắt một phần hình chữ nhật của bất kỳ hình ảnh nào.Tham số: Hộp-4-Tuple xác định tọa độ pixel trái, trên, phải và dưới.Loại trả về: Hình ảnh (trả về một vùng hình chữ nhật như (trái, trên, phải, dưới) -tuple).. Parameters: box – a 4-tuple defining the left, upper, right, and lower pixel coordinate. Return type: Image (Returns a rectangular region as (left, upper, right, lower)-tuple).

Có một ứng dụng để cắt nhiều ảnh cùng một lúc?

BatchCropper là một ứng dụng đơn giản cho phép bạn cắt một số ảnh tại một thời điểm.Các bức ảnh được cắt có thể được lưu trong cuộn camera hoặc gửi qua e-mail hoặc vào Dropbox.Cài đặt cây trồng có thể tùy chỉnh và bạn có thể nhanh chóng chọn cài đặt và dễ dàng đi.. The cropped photos can be saved in camera roll or sent by e-mail or into Dropbox. Crop settings are customizable and you can quickly pick the setting and go easily.