Transformers documentation

Công cụ tiện ích cho bộ xử lý ảnh

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Công cụ tiện ích cho bộ xử lý ảnh

Trang này liệt kê tất cả các hàm tiện ích được sử dụng bởi các bộ xử lý ảnh, chủ yếu là các phép biến đổi dạng hàm được dùng để xử lý ảnh.

Phần lớn những thông tin này chỉ hữu ích nếu bạn đang nghiên cứu mã nguồn của các bộ xử lý ảnh trong thư viện.

Biến đổi ảnh

transformers.image_transforms.center_crop

< >

( image: ndarraysize: tupledata_format: str | transformers.image_utils.ChannelDimension | None = Noneinput_data_format: str | transformers.image_utils.ChannelDimension | None = None ) → np.ndarray

Tham số

  • image (np.ndarray) — Hình ảnh cần cắt.
  • size (tuple[int, int]) — Kích thước đích cho ảnh đã được cắt.
  • data_format (str hoặc ChannelDimension, tuỳ chọn) — Định dạng chiều kênh cho ảnh đầu ra. Có thể là một trong các giá trị sau:
    • "channels_first" hoặc ChannelDimension.FIRST: ảnh ở định dạng (num_channels, height, width).
    • "channels_last" hoặc ChannelDimension.LAST: ảnh ở định dạng (height, width, num_channels). Nếu không được đặt, sẽ sử dụng định dạng suy ra của ảnh đầu vào.
  • input_data_format (str hoặc ChannelDimension, tuỳ chọn) — Định dạng chiều kênh cho ảnh đầu vào. Có thể là một trong các giá trị sau:
    • "channels_first" hoặc ChannelDimension.FIRST: ảnh ở định dạng (num_channels, height, width).
    • "channels_last" hoặc ChannelDimension.LAST: ảnh ở định dạng (height, width, num_channels). Nếu không được đặt, sẽ sử dụng định dạng suy ra của ảnh đầu vào.

Trả về

np.ndarray

Hình ảnh đã được cắt.

Cắt image thành size đã chỉ định bằng cách cắt ở giữa. Lưu ý rằng nếu ảnh quá nhỏ để cắt thành kích thước đã cho, nó sẽ được đệm (do đó kết quả trả về luôn có kích thước size).

transformers.image_transforms.center_to_corners_format

< >

( bboxes_center: TensorType )

Chuyển đổi hộp bao từ định dạng tâm sang định dạng góc.

center format: chứa tọa độ của tâm hộp và các kích thước chiều rộng, chiều cao (center_x, center_y, width, height) corners format: chứa tọa độ của góc trên bên trái và góc dưới bên phải của hộp (top_left_x, top_left_y, bottom_right_x, bottom_right_y)

transformers.image_transforms.corners_to_center_format

< >

( bboxes_corners: TensorType )

Chuyển đổi hộp bao từ định dạng góc sang định dạng tâm.

corners format: chứa tọa độ của góc trên bên trái và góc dưới bên phải của hộp (top_left_x, top_left_y, bottom_right_x, bottom_right_y) center format: chứa tọa độ của tâm hộp cùng với chiều rộng, chiều cao (center_x, center_y, width, height)

transformers.image_transforms.id_to_rgb

< >

( id_map )

Chuyển đổi ID duy nhất thành màu RGB.

transformers.image_transforms.normalize

< >

( image: ndarraymean: float | collections.abc.Collection[float]std: float | collections.abc.Collection[float]data_format: transformers.image_utils.ChannelDimension | None = Noneinput_data_format: str | transformers.image_utils.ChannelDimension | None = None )

Tham số

  • image (np.ndarray) — Hình ảnh cần chuẩn hóa.
  • mean (float hoặc Collection[float]) — Giá trị trung bình được sử dụng để chuẩn hóa.
  • std (float hoặc Collection[float]) — Độ lệch chuẩn được sử dụng để chuẩn hóa.
  • data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của ảnh đầu ra. Nếu không được đặt, sẽ sử dụng định dạng suy ra từ đầu vào.
  • input_data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của ảnh đầu vào. Nếu không được đặt, sẽ sử dụng định dạng suy ra từ đầu vào.

Chuẩn hóa image bằng cách sử dụng giá trị trung bình và độ lệch chuẩn được chỉ định bởi mean và std.

image = (image - mean) / std

transformers.image_transforms.pad

< >

( image: ndarraypadding: int | tuple[int, int] | collections.abc.Iterable[tuple[int, int]]mode: PaddingMode = <PaddingMode.CONSTANT: 'constant'>constant_values: float | collections.abc.Iterable[float] = 0.0data_format: str | transformers.image_utils.ChannelDimension | None = Noneinput_data_format: str | transformers.image_utils.ChannelDimension | None = None ) → np.ndarray

Tham số

  • image (np.ndarray) — Hình ảnh cần chèn lề.
  • padding (int hoặc tuple[int, int] hoặc Iterable[tuple[int, int]]) — Padding áp dụng cho các cạnh của trục chiều cao và chiều rộng. Có thể ở một trong ba định dạng:
    • ((before_height, after_height), (before_width, after_width)) độ rộng pad riêng biệt cho mỗi trục.
    • ((before, after),) tạo ra padding trước và sau giống nhau cho chiều cao và chiều rộng.
    • (pad,) hoặc int là cách viết tắt cho before = after = pad width cho tất cả các trục.
  • mode (PaddingMode) — Chế độ padding cần sử dụng. Có thể là một trong các giá trị sau:
    • "constant": đệm bằng một giá trị hằng số.
    • "reflect": đệm bằng phép phản chiếu của vector được gương trên giá trị đầu và cuối của vector dọc theo mỗi trục.
    • "replicate": đệm bằng cách lặp lại giá trị cuối cùng ở cạnh của mảng dọc theo mỗi trục.
    • "symmetric": đệm bằng hình phản chiếu của vector được lật dọc theo cạnh của mảng.
  • constant_values (float hoặc Iterable[float], tùy chọn) — Giá trị được sử dụng cho phần đệm nếu mode là "constant".
  • data_format (str hoặc ChannelDimension, tùy chọn) — Định dạng chiều kênh cho ảnh đầu ra. Có thể là một trong các giá trị sau:
    • "channels_first" hoặc ChannelDimension.FIRST: ảnh ở định dạng (num_channels, height, width).
    • "channels_last" hoặc ChannelDimension.LAST: ảnh ở định dạng (height, width, num_channels). Nếu không được đặt, sẽ sử dụng cùng với ảnh đầu vào.
  • input_data_format (str hoặc ChannelDimension, tuỳ chọn) — Định dạng chiều kênh cho ảnh đầu vào. Có thể là một trong các giá trị sau:
    • "channels_first" hoặc ChannelDimension.FIRST: ảnh ở định dạng (num_channels, height, width).
    • "channels_last" hoặc ChannelDimension.LAST: ảnh ở định dạng (height, width, num_channels). Nếu không được đặt, sẽ sử dụng định dạng suy ra của ảnh đầu vào.

Trả về

np.ndarray

Hình ảnh đã được đệm.

Đệm image bằng padding (chiều cao, chiều rộng) và mode được chỉ định.

transformers.image_transforms.rgb_to_id

< >

( color )

Chuyển đổi màu RGB thành ID duy nhất.

transformers.image_transforms.rescale

< >

( image: ndarrayscale: floatdata_format: transformers.image_utils.ChannelDimension | None = Nonedtype: dtype = <class 'numpy.float32'>input_data_format: str | transformers.image_utils.ChannelDimension | None = None ) → np.ndarray

Tham số

  • image (np.ndarray) — Hình ảnh cần điều chỉnh tỷ lệ.
  • scale (float) — Hệ số dùng để thay đổi kích thước ảnh.
  • data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của hình ảnh. Nếu không được cung cấp, nó sẽ giống với hình ảnh đầu vào.
  • dtype (np.dtype, tùy chọn, mặc định là np.float32) — Dtype của ảnh đầu ra. Mặc định là np.float32. Được sử dụng để tương thích ngược với các bộ trích xuất đặc trưng.
  • input_data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của ảnh đầu vào. Nếu không được cung cấp, nó sẽ được suy ra từ ảnh đầu vào.

Trả về

np.ndarray

Hình ảnh đã được thay đổi tỷ lệ.

Thay đổi kích thước image theo scale.

transformers.image_transforms.resize

< >

( image: ndarraysize: tupleresample: typing.Optional[ForwardRef('PILImageResampling')] = Nonereducing_gap: int | None = Nonedata_format: transformers.image_utils.ChannelDimension | None = Nonereturn_numpy: bool = Trueinput_data_format: str | transformers.image_utils.ChannelDimension | None = None ) → np.ndarray

Tham số

  • image (np.ndarray) — Hình ảnh cần thay đổi kích thước.
  • size (tuple[int, int]) — Kích thước được sử dụng để thay đổi kích thước ảnh.
  • resample (int, tùy chọn, mặc định là PILImageResampling.BILINEAR) — Bộ lọc dùng để lấy mẫu lại.
  • reducing_gap (int, tuỳ chọn) — Áp dụng tối ưu hóa bằng cách thay đổi kích thước ảnh theo hai bước. reducing_gap càng lớn thì kết quả càng gần với việc lấy mẫu công bằng. Xem tài liệu tương ứng của Pillow để biết thêm chi tiết.
  • data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của ảnh đầu ra. Nếu không được đặt, sẽ sử dụng định dạng suy ra từ đầu vào.
  • return_numpy (bool, tuỳ chọn, mặc định là True) — Có nên trả về ảnh đã thay đổi kích thước dưới dạng mảng numpy hay không. Nếu là False, một đối tượng PIL.Image.Image sẽ được trả về.
  • input_data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của ảnh đầu vào. Nếu không được đặt, sẽ sử dụng định dạng suy ra từ đầu vào.

Trả về

np.ndarray

Hình ảnh đã được thay đổi kích thước.

Đổi kích thước image thành (height, width) được chỉ định bởi size bằng thư viện PIL.

transformers.image_transforms.to_pil_image

< >

( image: typing.Union[numpy.ndarray, ForwardRef('PIL.Image.Image'), ForwardRef('torch.Tensor')]do_rescale: bool | None = Noneimage_mode: str | None = Noneinput_data_format: str | transformers.image_utils.ChannelDimension | None = None ) → PIL.Image.Image

Tham số

  • image (PIL.Image.Image hoặc numpy.ndarray hoặc torch.Tensor) — Hình ảnh cần chuyển sang định dạng PIL.Image.
  • do_rescale (bool, tùy chọn) — Có áp dụng hệ số tỷ lệ (để làm cho giá trị pixel trở thành số nguyên từ 0 đến 255) hay không. Mặc định là True nếu kiểu ảnh là kiểu số thực và việc chuyển đổi sang int sẽ gây mất độ chính xác, và False trong các trường hợp khác.
  • image_mode (str, tùy chọn) — Chế độ sử dụng cho ảnh PIL. Nếu không được đặt, sẽ sử dụng chế độ mặc định cho loại ảnh đầu vào.
  • input_data_format (ChannelDimension, tùy chọn) — Định dạng chiều kênh của ảnh đầu vào. Nếu không được đặt, sẽ sử dụng định dạng suy ra từ đầu vào.

Trả về

PIL.Image.Image

Hình ảnh đã được chuyển đổi.

Chuyển đổi image thành một hình ảnh PIL. Tùy chọn để thay đổi tỷ lệ và đưa chiều kênh về làm trục cuối nếu cần.

ImageProcessingMixin

lớp transformers.ImageProcessingMixin

< >

( **kwargs )

Đây là một mixin của bộ xử lý hình ảnh được sử dụng để cung cấp chức năng lưu/tải cho các bộ trích xuất đặc trưng tuần tự và hình ảnh.

fetch_images

< >

( image_url_or_urls: str | list[str] | list[list[str]] )

Chuyển đổi một hoặc một danh sách các url thành các đối tượng PIL.Image tương ứng.

Nếu một url duy nhất được truyền vào, giá trị trả về sẽ là một đối tượng duy nhất. Nếu một danh sách được truyền vào, một danh sách các đối tượng sẽ được trả về.

from_dict

< >

( image_processor_dict: dict**kwargs ) → ImageProcessingMixin

Tham số

  • image_processor_dict (dict[str, Any]) — Từ điển sẽ được dùng để khởi tạo đối tượng image processor. Một từ điển như vậy có thể được lấy từ checkpoint được huấn luyện trước bằng cách sử dụng phương thức to_dict().
  • kwargs (dict[str, Any]) — Các tham số bổ sung để khởi tạo đối tượng image processor.

Đối tượng image processor được khởi tạo từ các tham số đó.

Tạo một kiểu ImageProcessingMixin từ một từ điển Python chứa các tham số.

from_json_file

< >

( json_file: str | os.PathLike ) → A image processor of type ImageProcessingMixin

Tham số

  • json_file (str hoặc os.PathLike) — Đường dẫn đến tệp JSON chứa các tham số.

Trả về

Bộ xử lý ảnh có kiểu ImageProcessingMixin

Đối tượng image_processor được khởi tạo từ tệp JSON đó.

Khởi tạo một bộ xử lý ảnh có kiểu ImageProcessingMixin từ đường dẫn đến tệp JSON chứa các tham số.

from_pretrained

< >

( pretrained_model_name_or_path: str | os.PathLikecache_dir: str | os.PathLike | None = Noneforce_download: bool = Falselocal_files_only: bool = Falsetoken: str | bool | None = Nonerevision: str = 'main'**kwargs )

Tham số

  • pretrained_model_name_or_path (str hoặc os.PathLike) — Đây có thể là:
    • một chuỗi, model id của một image_processor được huấn luyện trước, được lưu trữ trong một kho model trên huggingface.co.
    • đường dẫn đến một thư mục chứa tệp image processor được lưu bằng phương thức save_pretrained(), ví dụ: ./my_model_directory/.
    • đường dẫn đến tệp JSON của bộ xử lý ảnh đã lưu file, ví dụ: ./my_model_directory/preprocessor_config.json.
  • cache_dir (str hoặc os.PathLike, tùy chọn) — Đường dẫn đến thư mục mà bộ xử lý ảnh của mô hình được huấn luyện trước đã tải xuống sẽ được lưu đệm, nếu không sử dụng bộ lưu đệm tiêu chuẩn.
  • force_download (bool, tùy chọn, mặc định là False) — Có nên buộc (tải lại) các tệp bộ xử lý ảnh và ghi đè lên các phiên bản được lưu trong bộ nhớ đệm nếu chúng tồn tại hay không.
  • proxies (dict[str, str], tuỳ chọn) — Một từ điển các máy chủ proxy để sử dụng theo giao thức hoặc điểm cuối, ví dụ: {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Các proxy này được sử dụng cho mỗi yêu cầu.
  • token (str hoặc bool, tùy chọn) — Token được sử dụng làm HTTP bearer authorization cho các tệp từ xa. Nếu True, hoặc không được chỉ định, sẽ sử dụng token được tạo khi chạy hf auth login (được lưu trong ~/.huggingface).
  • revision (str, tùy chọn, mặc định là "main") — Phiên bản mô hình cụ thể cần sử dụng. Nó có thể là tên nhánh, tên thẻ hoặc id commit, vì chúng tôi sử dụng hệ thống dựa trên git để lưu trữ các mô hình và các sản phẩm khác trên huggingface.co, do đó revision có thể là bất kỳ định danh nào được git cho phép.

Tạo một kiểu ImageProcessingMixin từ một image processor.

Ví dụ:

# We can't instantiate directly the base class *ImageProcessingMixin* so let's show the examples on a
# derived class: *CLIPImageProcessor*
image_processor = CLIPImageProcessor.from_pretrained(
    "openai/clip-vit-base-patch32"
)  # Download image_processing_config from huggingface.co and cache.
image_processor = CLIPImageProcessor.from_pretrained(
    "./test/saved_model/"
)  # E.g. image processor (or model) was saved using *save_pretrained('./test/saved_model/')*
image_processor = CLIPImageProcessor.from_pretrained("./test/saved_model/preprocessor_config.json")
image_processor = CLIPImageProcessor.from_pretrained(
    "openai/clip-vit-base-patch32", do_normalize=False, foo=False
)
assert image_processor.do_normalize is False
image_processor, unused_kwargs = CLIPImageProcessor.from_pretrained(
    "openai/clip-vit-base-patch32", do_normalize=False, foo=False, return_unused_kwargs=True
)
assert image_processor.do_normalize is False
assert unused_kwargs == {"foo": False}

get_image_processor_dict

< >

( pretrained_model_name_or_path: str | os.PathLike**kwargs ) → tuple[Dict, Dict]

Tham số

  • pretrained_model_name_or_path (str hoặc os.PathLike) — Định danh của checkpoint được huấn luyện trước mà chúng ta muốn lấy từ điển các tham số từ đó.
  • subfolder (str, tùy chọn, mặc định là "") — Trong trường hợp các tệp liên quan nằm trong một thư mục con của kho mô hình trên huggingface.co, bạn có thể chỉ định tên thư mục ở đây.
  • image_processor_filename (str, tùy chọn, mặc định là "config.json") — Tên tệp trong thư mục mô hình được sử dụng cho cấu hình bộ xử lý ảnh.

Trả về

tuple[Dict, Dict]

Từ điển sẽ được sử dụng để khởi tạo đối tượng image processor.

Từ pretrained_model_name_or_path, phân giải thành một từ điển các tham số, để sử dụng cho việc khởi tạo một bộ xử lý ảnh có kiểu ~image_processor_utils.ImageProcessingMixin bằng from_dict.

push_to_hub

< >

( repo_id: strcommit_message: str | None = Nonecommit_description: str | None = Noneprivate: bool | None = Nonetoken: bool | str | None = Nonerevision: str | None = Nonecreate_pr: bool = Falsemax_shard_size: int | str | None = '50GB'tags: list[str] | None = None )

Tham số

  • repo_id (str) — Tên của kho mà bạn muốn đẩy bộ xử lý ảnh của mình đến. Nó nên chứa tên tổ chức của bạn khi đẩy đến một tổ chức cụ thể.
  • commit_message (str, tùy chọn) — Thông điệp để commit khi đẩy. Mặc định là "Upload image processor".
  • commit_description (str, tùy chọn) — Mô tả của commit sẽ được tạo
  • private (bool, optional) — Xác định có làm cho kho (repo) ở chế độ riêng tư hay không. Nếu là None (mặc định), kho sẽ ở chế độ công khai trừ khi mặc định của tổ chức là riêng tư. Giá trị này bị bỏ qua nếu kho đã tồn tại.
  • token (bool hoặc str, tùy chọn) — Token được sử dụng làm HTTP bearer authorization cho các tệp từ xa. Nếu True (mặc định), sẽ sử dụng token được tạo ra khi chạy hf auth login (được lưu trong ~/.huggingface).
  • revision (str, tùy chọn) — Nhánh để đẩy các tệp đã tải lên.
  • create_pr (bool, tùy chọn, mặc định là False) — Có tạo PR với các tệp đã tải lên hay commit trực tiếp hay không.
  • max_shard_size (int hoặc str, tùy chọn, mặc định là "50GB") — Chỉ áp dụng cho các model. Kích thước tối đa của một checkpoint trước khi được chia shard. Các checkpoint sau khi chia shard sẽ có kích thước nhỏ hơn giá trị này. Nếu được biểu diễn dưới dạng chuỗi, cần là các chữ số theo sau bởi một đơn vị (ví dụ "5MB").
  • tags (list[str], tùy chọn) — Danh sách các thẻ để đẩy lên Hub.

Tải tệp trình xử lý hình ảnh lên 🤗 Model Hub.

Ví dụ:

from transformers import AutoImageProcessor

image processor = AutoImageProcessor.from_pretrained("google-bert/bert-base-cased")

# Push the image processor to your namespace with the name "my-finetuned-bert".
image processor.push_to_hub("my-finetuned-bert")

# Push the image processor to an organization with the name "my-finetuned-bert".
image processor.push_to_hub("huggingface/my-finetuned-bert")

register_for_auto_class

< >

( auto_class = 'AutoImageProcessor' )

Tham số

  • auto_class (str hoặc type, tùy chọn, mặc định là "AutoImageProcessor ") — Lớp auto để đăng ký trình xử lý ảnh mới này.

Đăng ký lớp này với một lớp auto cho trước. Thao tác này chỉ nên được sử dụng cho các image processor tùy chỉnh vì các image processor trong thư viện đã được ánh xạ với AutoImageProcessor.

save_pretrained

< >

( save_directory: str | os.PathLikepush_to_hub: bool = False**kwargs )

Tham số

  • save_directory (str hoặc os.PathLike) — Thư mục nơi tệp JSON của bộ xử lý hình ảnh sẽ được lưu (sẽ được tạo nếu chưa tồn tại).
  • push_to_hub (bool, tùy chọn, mặc định là False) — Có đẩy mô hình của bạn lên Hugging Face model hub sau khi lưu hay không. Bạn có thể chỉ định kho lưu trữ muốn đẩy đến bằng repo_id (mặc định sẽ là tên của save_directory trong namespace của bạn).
  • kwargs (dict[str, Any], tùy chọn) — Các đối số từ khóa bổ sung được truyền đến phương thức push_to_hub().

Lưu đối tượng image processor vào thư mục save_directory để có thể tải lại bằng phương thức lớp from_pretrained().

to_dict

< >

( ) → dict[str, Any]

Trả về

dict[str, Any]

Từ điển chứa tất cả các thuộc tính cấu thành lên bản thể image processor này.

Chuẩn hóa bản thể này thành một từ điển Python.

to_json_file

< >

( json_file_path: str | os.PathLike )

Tham số

  • json_file_path (str hoặc os.PathLike) — Đường dẫn đến tệp JSON mà các tham số của instance image_processor này sẽ được lưu vào.

Lưu bản thể này vào một tệp JSON.

to_json_string

< >

( ) → str

Trả về

str

Chuỗi chứa tất cả các thuộc tính tạo thành instance feature_extractor này ở định dạng JSON.

Chuẩn hóa bản thể này thành một chuỗi JSON.

Update on GitHub