Transformers documentation

PP-LCNet

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

Эта модель была добавлена в Hugging Face Transformers 13.03.2026.

PP-LCNet

Обзор

PP-LCNet PP-LCNet — это семейство эффективных, лёгких свёрточных нейронных сетей, предназначенных для задач понимания документов и OCR в реальных условиях. Он обеспечивает баланс между точностью, скоростью и размером модели, что делает его идеальным как для серверного, так и для edge-развёртывания. Для удовлетворения различных требований к обработке документов PP-LCNet имеет три основных варианта, каждый из которых оптимизирован под конкретную задачу.

Архитектура модели

  1. Модуль классификации ориентации изображений документов предназначен в первую очередь для определения ориентации изображений документов и их коррекции на этапе постобработки. В ходе таких процессов, как сканирование документов или фотографирование удостоверений личности, устройство может быть повернуто для получения более чётких изображений, в результате чего получаются изображения с различными ориентациями. Стандартные конвейеры OCR могут не справляться с такими изображениями эффективно. Используя методы классификации изображений, можно заранее определить и скорректировать ориентацию документов или удостоверений, содержащих области с текстом, что повышает точность обработки OCR.

  2. Модуль классификации таблиц является ключевым компонентом систем компьютерного зрения, отвечающим за классификацию входных изображений таблиц. Производительность этого модуля напрямую влияет на точность и эффективность всего процесса распознавания таблиц. Модуль классификации таблиц, как правило, принимает на вход изображения таблиц и с помощью алгоритмов глубокого обучения классифицирует их в заранее определённые категории на основе характеристик и содержания изображений, например, таблицы с рамками и без рамок. Результаты классификации, полученные от модуля классификации таблиц, используются в качестве выходных данных в конвейерах распознавания таблиц.

  3. Модуль классификации ориентации строк текста в первую очередь определяет ориентацию строк и корректирует их с помощью постобработки. В таких процессах, как сканирование документов и фотографирование удостоверений/сертификатов, для получения более чётких изображений устройство захвата может быть повёрнуто, в результате чего строки текста оказываются в различных ориентациях. Стандартные конвейеры OCR плохо справляются с такими данными. Используя технологии классификации изображений, можно заранее определить и скорректировать ориентацию строк текста, что повышает точность обработки OCR.

Использование

Вывод для одного входа

Приведённый ниже пример демонстрирует, как классифицировать изображение с помощью PP-LCNet, используя Pipeline или AutoModel.

Пайплайн
AutoModel
import requests
from PIL import Image

from transformers import pipeline


model_path = "PaddlePaddle/PP-LCNet_x1_0_doc_ori_safetensors"
image_classifier = pipeline("image-classification", model=model_path, function_to_apply="none", device_map="auto")

image = Image.open(requests.get("https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/paddle_img_rot180_demo.jpg", stream=True).raw)
result = image_classifier(image)
print(result)

Пакетный вывод

Вот как это можно сделать с PP-LCNet, используя Pipeline или AutoModel:

Пайплайн
AutoModel
import requests
from PIL import Image

from transformers import pipeline


model_path = "PaddlePaddle/PP-LCNet_x1_0_doc_ori_safetensors"
image_classifier = pipeline("image-classification", model=model_path, function_to_apply="none", device_map="auto")

image = Image.open(requests.get("https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/paddle_img_rot180_demo.jpg", stream=True).raw)
result = image_classifier([image, image])
print(result)

PPLCNetForImageClassification

класс transformers.PPLCNetForImageClassification

< >

( config: PPLCNetConfig )

Параметры

  • config (PPLCNetConfig) — Класс конфигурации модели, содержащий все параметры модели. Инициализация с помощью файла конфигурации не загружает веса, связанные с моделью, а только конфигурацию. Используйте метод from_pretrained() для загрузки весов модели.

Модель Pp Lcnet с головкой для классификации изображений, например, для ImageNet.

Эта модель наследуется от PreTrainedModel. См. документацию родительского класса для общих методов, которые библиотека реализует для всех своих моделей (например, загрузка или сохранение, изменение размера входных эмбеддингов, обрезка голов и т. д.)

Эта модель также является подклассом torch.nn.Module в PyTorch. Используйте её как обычный модуль PyTorch и обращайтесь к документации PyTorch по всем вопросам, связанным с общим использованием и поведением.

forward

< >

( pixel_values: typing.Optional[torch.FloatTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithNoAttention or tuple(torch.FloatTensor)

Параметры

  • pixel_values (torch.FloatTensor формы (batch_size, num_channels, image_size, image_size), необязательный) — Тензоры, соответствующие входным изображениям. Значения пикселей можно получить с помощью PPLCNetImageProcessor. Подробности см. в PPLCNetImageProcessor.call() (processor_class использует PPLCNetImageProcessor для обработки изображений).

Возвращает

BaseModelOutputWithNoAttention или tuple(torch.FloatTensor)

Объект BaseModelOutputWithNoAttention или кортеж torch.FloatTensor (если передано return_dict=False или если config.return_dict=False), содержащий различные элементы в зависимости от конфигурации (PPLCNetConfig) и входных данных.

Метод forward класса PPLCNetForImageClassification переопределяет специальный метод __call__.

Хотя рецепт для прямого прохода должен быть определён внутри этой функции, после этого следует вызывать экземпляр Module, а не эту функцию, поскольку первый вариант обеспечивает выполнение шагов предварительной и последующей обработки, тогда как второй молча их игнорирует.

  • last_hidden_state (torch.FloatTensor формы (batch_size, num_channels, height, width)) — Последовательность скрытых состояний на выходе последнего слоя модели.

  • hidden_states (tuple(torch.FloatTensor), необязательный, возвращается при передаче output_hidden_states=True или когда config.output_hidden_states=True) — Кортеж из torch.FloatTensor (один для вывода слоя встраиваний, если модель содержит такой слой, + один для вывода каждого слоя) формы (batch_size, num_channels, height, width).

    Скрытые состояния модели на выходе каждого слоя, а также необязательные выходные значения начального слоя встраивания.

Примеры:

>>> from huggingface_hub.utils import httpx
>>> from io import BytesIO
>>> from PIL import Image
>>> from transformers import AutoModelForImageClassification, AutoImageProcessor

>>> model_path = "PaddlePaddle/PP-LCNet_x1_0_table_cls_safetensors"
>>> model = AutoModelForImageClassification.from_pretrained(model_path)
>>> image_processor = AutoImageProcessor.from_pretrained(model_path)

>>> url = "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/paddle_img_rot180_demo.jpg"
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read()))

>>> inputs = image_processor(images=image, return_tensors="pt")
>>> outputs = model(**inputs)
>>> predicted_label = outputs.last_hidden_state.argmax(-1).item()
>>> print(model.config.id2label[predicted_label])
wireless_table

PPLCNetConfig

класс transformers.PPLCNetConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonescale: float | int = 1.0block_configs: list | None = Nonestem_channels: int = 16stem_stride: int = 2reduction: int = 4class_expand: int = 1280divisor: int = 8hidden_act: str = 'hardswish'_out_features: list[str] | None = None_out_indices: list[int] | None = Nonehidden_dropout_prob: float | int = 0.2 )

Параметры

  • scale (float, необязательный, по умолчанию 1.0) — Коэффициент масштабирования размерности каналов модели, используемый для изменения размера модели и вычислительных затрат без изменения общей архитектуры (например, 0.25, 0.5, 1.0, 1.5).
  • block_configs (list[list[tuple]], необязательный, по умолчанию None) — Конфигурация для каждого блока на каждом этапе. Каждый кортеж содержит: (kernel_size, in_channels, out_channels, stride, use_squeeze_excitation). Если None, используется конфигурация PP-LCNet по умолчанию.
  • stem_channels (int, необязательный, по умолчанию 16) — Количество выходных каналов для стебельного слоя.
  • stem_stride (int, необязательный, по умолчанию 2) — Шаг для слоя свёртки stem.
  • reduction (int, необязательный, по умолчанию 4) — Коэффициент редукции размерности каналов признаков в блоках squeeze-and-excitation (SE), используемый для уменьшения числа параметров модели и вычислительной сложности при сохранении выразительности признаков.
  • class_expand (int, необязательный, по умолчанию 1280) — Количество скрытых единиц в слое расширения классификационной головы, используемое для улучшения способности модели представлять признаки перед финальным слоем классификации.
  • divisor (int, необязательный, по умолчанию 8) — Делитель, используемый для обеспечения того, чтобы различные параметры модели (например, размерности каналов, размеры ядер) были кратны этому значению, что способствует эффективной реализации модели и использованию ресурсов.
  • hidden_act (str, необязательный, по умолчанию hardswish) — Нелинейная функция активации (функция или строка) в декодере. Например, "gelu", "relu", "silu" и т. д.
  • hidden_dropout_prob (Union[float, int], необязательный, по умолчанию 0.2) — Вероятность dropout для всех полносвязных слоёв в блоках эмбеддингов, энкодера и пулера.

Это класс конфигурации для хранения конфигурации модели Pp LcnetModel. Он используется для создания модели Pp Lcnet в соответствии с указанными аргументами, определяя архитектуру модели. Создание конфигурации с параметрами по умолчанию даст конфигурацию, аналогичную конфигурации PaddlePaddle/PP-LCNet_x1_0_doc_ori_safetensors

Объекты конфигурации наследуются от PreTrainedConfig и могут использоваться для управления выводами модели. Подробнее читайте в документации PreTrainedConfig.

PPLCNetBackbone

класс transformers.PPLCNetBackbone

< >

( config: PPLCNetConfig )

Параметры

  • config (PPLCNetConfig) — Класс конфигурации модели, содержащий все параметры модели. Инициализация с помощью файла конфигурации не загружает веса, связанные с моделью, а только конфигурацию. Используйте метод from_pretrained() для загрузки весов модели.

Модель-бэкбон PPLCNet для извлечения признаков.

Эта модель наследуется от PreTrainedModel. См. документацию родительского класса для общих методов, которые библиотека реализует для всех своих моделей (например, загрузка или сохранение, изменение размера входных эмбеддингов, обрезка голов и т. д.)

Эта модель также является подклассом torch.nn.Module в PyTorch. Используйте её как обычный модуль PyTorch и обращайтесь к документации PyTorch по всем вопросам, связанным с общим использованием и поведением.

forward

< >

( pixel_values: Tensor**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BackboneOutput or tuple(torch.FloatTensor)

Параметры

  • pixel_values (torch.Tensor формы (batch_size, num_channels, image_size, image_size)) — Тензоры, соответствующие входным изображениям. Значения пикселей можно получить с помощью PPLCNetImageProcessor. Подробности см. в PPLCNetImageProcessor.call() (processor_class использует PPLCNetImageProcessor для обработки изображений).

Возвращает

BackboneOutput или tuple(torch.FloatTensor)

Объект BackboneOutput или кортеж из torch.FloatTensor (если передано return_dict=False или если config.return_dict=False), содержащий различные элементы в зависимости от конфигурации (PPLCNetConfig) и входных данных.

Метод forward класса PPLCNetBackbone переопределяет специальный метод __call__.

Хотя рецепт для прямого прохода должен быть определён внутри этой функции, после этого следует вызывать экземпляр Module, а не эту функцию, поскольку первый вариант обеспечивает выполнение шагов предварительной и последующей обработки, тогда как второй молча их игнорирует.

  • feature_maps (tuple(torch.FloatTensor) формы (batch_size, num_channels, height, width)) — Карты признаков на каждом этапе.

  • hidden_states (tuple(torch.FloatTensor), необязательный, возвращается, если передано output_hidden_states=True или если config.output_hidden_states=True) — кортеж из torch.FloatTensor (один для вывода эмбеддингов + один для вывода каждого слоя) с формой (batch_size, sequence_length, hidden_size) или (batch_size, num_channels, height, width) в зависимости от базовой модели.

    Скрытые состояния модели на выходе каждого этапа, а также выходные значения начального слоя встраивания.

  • attentions (tuple(torch.FloatTensor), необязательный, возвращается при передаче output_attentions=True или если config.output_attentions=True) — Кортеж torch.FloatTensor (по одному для каждого слоя) формы (batch_size, num_heads, sequence_length, sequence_length). Применимо только в том случае, если базовая модель использует механизм внимания.

    Веса внимания после softmax в механизме внимания, используемые для вычисления взвешенного среднего в головах само-внимания.

Примеры:

>>> from transformers import PPLCNetConfig, PPLCNetBackbone
>>> import torch

>>> config = PPLCNetConfig()
>>> model = PPLCNetBackbone(config)

>>> pixel_values = torch.randn(1, 3, 224, 224)

>>> with torch.no_grad():
...     outputs = model(pixel_values)

>>> feature_maps = outputs.feature_maps
>>> list(feature_maps[-1].shape)

PPLCNetImageProcessor

класс transformers.PPLCNetImageProcessor

< >

( **kwargs: *<class 'transformers.processing_utils.ImagesKwargs'> )

Параметры

  • do_convert_rgb (bool, kwargs, optional) — Следует ли преобразовать изображение в RGB.
  • do_resize (bool, kwargs, optional, по умолчанию True) — Указывает, нужно ли изменять размер изображения.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs, по умолчанию {'height' -- 256, 'width': 256}): Определяет максимальные размеры входных данных для модели.
  • default_to_square (bool, kwargs, optional, по умолчанию True) — Определяет, следует ли по умолчанию использовать квадратное изображение при изменении размера, если size задано как int.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs, по умолчанию 224) — Размер выходного изображения после применения center_crop.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None], kwargs, по умолчанию 2) — Фильтр ресемплинга, используемый при изменении размера изображения. Может быть одним из значений перечисления PILImageResampling. Влияет только в том случае, если do_resize установлено в True.
  • do_rescale (bool, kwargs, optional, по умолчанию True) — Указывает, следует ли выполнять рескейлинг изображения.
  • rescale_factor (float, kwargs, optional, по умолчанию 0.00392156862745098) — Коэффициент масштабирования, применяемый к изображению, если do_rescale установлен в True.
  • do_normalize (bool, kwargs, optional, по умолчанию True) — Указывает, следует ли нормализовать изображение.
  • image_mean (Union[float, list[float], tuple[float, ...]], kwargs, optional, по умолчанию [0.406, 0.456, 0.485]) — Среднее значение изображения, используемое для нормализации. Влияет только в том случае, если do_normalize установлено в True.
  • image_std (Union[float, list[float], tuple[float, ...]], kwargs, optional, по умолчанию [0.225, 0.224, 0.229]) — Стандартное отклонение изображения, используемое для нормализации. Влияет только в том случае, если do_normalize установлено в True.
  • do_pad (bool, kwargs, optional) — Определяет, нужно ли выравнивать изображение. Выравнивание выполняется либо до максимального размера в батче, либо до фиксированного квадратного размера для каждого изображения. Точная стратегия выравнивания зависит от модели.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — Размер в формате {"height": int, "width" int}, до которого следует дополнить изображения. Должен быть больше любого размера изображения, предоставленного для предобработки. Если pad_size не указан, изображения будут дополнены до наибольшей высоты и ширины в батче. Применяется только при do_pad=True.
  • do_center_crop (bool, kwargs, optional, по умолчанию True) — Выполнять ли центрированную обрезку изображения.
  • data_format (Union[str, ~image_utils.ChannelDimension], kwargs, optional) — Поддерживается только ChannelDimension.FIRST. Добавлено для совместимости с медленными процессорами.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, необязательный) — Формат размерности каналов для входного изображения. Если не задан, формат размерности каналов выводится из входного изображения. Может быть одним из:
    • "channels_first" или ChannelDimension.FIRST: изображение в формате (num_channels, height, width).
    • "channels_last" или ChannelDimension.LAST: изображение в формате (высота, ширина, число каналов).
    • "none" или ChannelDimension.NONE: изображение в формате (height, width).
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — Устройство, на котором будут обрабатываться видео. Если не задано, устройство определяется на основе входных видео.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — Возвращает стопку тензоров, если установлено значение 'pt', иначе возвращает список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional, по умолчанию 256) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, но в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, однако в будущих моделях это значение следует задавать как атрибут процессора. Если установлено в 'pt', возвращает стопку тензоров, иначе — список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, но в будущих моделях это значение следует задавать как атрибут процессора.
  • Returns stacked tensors if set to 'pt', otherwise returns a list of tensors. —

Создаёт процессор изображений PPLCNetImageProcessor.

disable_grouping (bool, kwargs, optional): Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, подробно описанных здесь: https://github.com/huggingface/transformers/pull/38157 image_seq_length (int, kwargs, optional): Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, но в будущих моделях это значение следует задавать как атрибут процессора.

preprocess

< >

( images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor']]*argsimage_like_kwargs: dict[str, typing.Any] | None = None**kwargs: *<class 'transformers.processing_utils.ImagesKwargs'> ) → ~image_processing_base.BatchFeature

Параметры

  • images (Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]) — Изображение для предобработки. Ожидается одно изображение или батч изображений со значениями пикселей в диапазоне от 0 до 255. Если передаются изображения со значениями пикселей в диапазоне от 0 до 1, установите do_rescale=False.
  • image_like_kwargs (dict[str, Any], необязательный) — Флаг для разработчиков, позволяющий передать дополнительные входные данные, похожие на изображения, которые также будут предобработаны. Используйте этот параметр только в том случае, если передача входных данных через kwarg не работает. Например, preprocess(images, masks=masks) — предпочтительный вариант, но для некоторых моделей он приводит к проблемам с приоритетом аргументов. В таких случаях можно использовать preprocess(images, image_like_inputs={"masks": masks}).
  • do_convert_rgb (bool, kwargs, optional) — Следует ли преобразовать изображение в RGB.
  • do_resize (bool, kwargs, optional) — Указывает, нужно ли изменить размер изображения.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — Описывает максимальные размеры входных данных для модели.
  • default_to_square (bool, kwargs, optional) — Определяет, следует ли по умолчанию использовать квадратное изображение при изменении размера, если size является целым числом.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — Размер выходного изображения после применения center_crop.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None], kwargs) — Фильтр ресемплинга, используемый при изменении размера изображения. Может быть одним из значений перечисления PILImageResampling. Влияет только в том случае, если do_resize установлено в True.
  • do_rescale (bool, kwargs, optional) — Нужно ли перемасштабировать изображение.
  • rescale_factor (float, kwargs, optional) — Коэффициент масштабирования, применяемый к изображению, если do_rescale установлен в True.
  • do_normalize (bool, kwargs, optional) — Нужно ли нормализовать изображение.
  • image_mean (Union[float, list[float], tuple[float, ...]], kwargs, optional) — Среднее значение изображения, используемое для нормализации. Влияет только в том случае, если do_normalize установлено в True.
  • image_std (Union[float, list[float], tuple[float, ...]], kwargs, optional) — Стандартное отклонение изображения, используемое для нормализации. Влияет только в том случае, если do_normalize установлено в True.
  • do_pad (bool, kwargs, optional) — Определяет, нужно ли выравнивать изображение. Выравнивание выполняется либо до максимального размера в батче, либо до фиксированного квадратного размера для каждого изображения. Точная стратегия выравнивания зависит от модели.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — Размер в формате {"height": int, "width" int}, до которого следует дополнить изображения. Должен быть больше любого размера изображения, предоставленного для предобработки. Если pad_size не указан, изображения будут дополнены до наибольшей высоты и ширины в батче. Применяется только при do_pad=True.
  • do_center_crop (bool, kwargs, optional) — Выполнять ли центрированную обрезку изображения.
  • data_format (Union[str, ~image_utils.ChannelDimension], kwargs, optional) — Поддерживается только ChannelDimension.FIRST. Добавлено для совместимости с медленными процессорами.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, необязательный) — Формат размерности каналов для входного изображения. Если не задан, формат размерности каналов выводится из входного изображения. Может быть одним из:
    • "channels_first" или ChannelDimension.FIRST: изображение в формате (num_channels, height, width).
    • "channels_last" или ChannelDimension.LAST: изображение в формате (высота, ширина, число каналов).
    • "none" или ChannelDimension.NONE: изображение в формате (height, width).
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — Устройство, на котором будут обрабатываться видео. Если не задано, устройство определяется на основе входных видео.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — Возвращает стопку тензоров, если установлено значение 'pt', иначе возвращает список тензоров.
  • disable_grouping (bool, kwargs, optional) — Определяет, следует ли отключить группировку изображений по размеру для их индивидуальной обработки, а не пачками. Если значение равно None, оно будет установлено в True, если изображения находятся на CPU, и в False в противном случае. Этот выбор основан на эмпирических наблюдениях, описанных здесь: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, optional) — Количество токенов изображения, используемых для каждого изображения во входных данных. Добавлено для обратной совместимости, но в будущих моделях это значение следует задавать как атрибут процессора.

Возвращает

~image_processing_base.BatchFeature

  • data (dict) — Словарь списков/массивов/тензоров, возвращаемый методом call (‘pixel_values’ и т. д.).
  • tensor_type (Union[None, str, TensorType], необязательный) — Здесь можно указать tensor_type, чтобы при инициализации преобразовать списки целых чисел в тензоры PyTorch/Numpy.

Предобработка изображения или пакета изображений.

Update on GitHub