Transformers documentation
Utilidades para procesadores de imágenes
Utilidades para procesadores de imágenes
Esta página enumera todas las funciones utilitarias utilizadas por los procesadores de imágenes, principalmente las transformaciones funcionales empleadas para procesar las imágenes.
La mayoría de esos parámetros solo son útiles si estás estudiando el código de los procesadores de imágenes de la biblioteca.
Transformaciones de imagen
transformers.image_transforms.center_crop
< source >( image: ndarraysize: tupledata_format: str | transformers.image_utils.ChannelDimension | None = Noneinput_data_format: str | transformers.image_utils.ChannelDimension | None = None ) → np.ndarray
Parámetros
- image (
np.ndarray) — La imagen que se recortará. - size (
tuple[int, int]) — El tamaño objetivo para la imagen recortada. - data_format (
stroChannelDimension, opcional) — El formato de la dimensión de canales para la imagen de salida. Puede ser uno de:"channels_first"oChannelDimension.FIRST: imagen en formato (num_channels, height, width)."channels_last"oChannelDimension.LAST: imagen en formato (altura, ancho, num_canales). Si no se establece, se usará el formato inferido de la imagen de entrada.
- input_data_format (
stroChannelDimension, opcional) — El formato de la dimensión de canales para la imagen de entrada. Puede ser uno de:"channels_first"oChannelDimension.FIRST: imagen en formato (num_channels, height, width)."channels_last"oChannelDimension.LAST: imagen en formato (altura, ancho, num_canales). Si no se establece, se usará el formato inferido de la imagen de entrada.
Devuelve
np.ndarray
La imagen recortada.
Recorta la image al size especificado mediante un recorte centrado. Tenga en cuenta que si la imagen es demasiado pequeña para recortarla al tamaño indicado, se rellenará (de modo que el resultado devuelto siempre será de tamaño size).
Convierte las cajas delimitadoras del formato de centro al formato de esquinas.
formato center: contiene la coordenada del centro de la caja y sus dimensiones de ancho y alto (center_x, center_y, width, height) formato corners: contiene las coordenadas de las esquinas superior izquierda e inferior derecha de la caja (top_left_x, top_left_y, bottom_right_x, bottom_right_y)
Convierte las cajas delimitadoras del formato de esquinas al formato de centro.
formato corners: contiene las coordenadas de las esquinas superior izquierda e inferior derecha de la caja (top_left_x, top_left_y, bottom_right_x, bottom_right_y) formato center: contiene la coordenada del centro de la caja y sus dimensiones de ancho y alto (center_x, center_y, width, height)
Convierte un ID único en un color RGB.
transformers.image_transforms.normalize
< source >( 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 )
Parámetros
- image (
np.ndarray) — La imagen que se va a normalizar. - mean (
floatoCollection[float]) — La media a utilizar para la normalización. - std (
floatoCollection[float]) — La desviación estándar a utilizar para la normalización. - data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen de salida. Si no se establece, se usará el formato inferido a partir de la entrada. - input_data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen de entrada. Si no se establece, se utilizará el formato inferido a partir de la entrada.
Normaliza image utilizando la media y la desviación estándar especificadas por mean y std.
image = (image - mean) / std
transformers.image_transforms.pad
< source >( 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
Parámetros
- image (
np.ndarray) — La imagen que se debe rellenar. - padding (
intotuple[int, int]oIterable[tuple[int, int]]) — Relleno a aplicar a los bordes de los ejes de altura y ancho. Puede tener uno de tres formatos:((before_height, after_height), (before_width, after_width))anchos de relleno únicos para cada eje.((before, after),)genera el mismo relleno antes y después para la altura y el ancho.(pad,)o int es un atajo para before = after = pad width para todos los ejes.
- mode (
PaddingMode) — El modo de relleno a utilizar. Puede ser uno de los siguientes:"constant": rellena con un valor constante."reflect": rellena con la reflexión del vector espejada en los primeros y últimos valores del vector a lo largo de cada eje."replicate": rellena con la replicación del último valor en el borde del array a lo largo de cada eje."symmetric": rellena con la reflexión del vector espejada a lo largo del borde del array.
- constant_values (
floatoIterable[float], opcional) — El valor que se usará para el relleno simodees"constant". - data_format (
stroChannelDimension, opcional) — El formato de la dimensión de canales para la imagen de salida. Puede ser uno de:"channels_first"oChannelDimension.FIRST: imagen en formato (num_channels, height, width)."channels_last"oChannelDimension.LAST: imagen en formato (altura, ancho, num_canales). Si no se establece, se usará el mismo que la imagen de entrada.
- input_data_format (
stroChannelDimension, opcional) — El formato de la dimensión de canales para la imagen de entrada. Puede ser uno de:"channels_first"oChannelDimension.FIRST: imagen en formato (num_channels, height, width)."channels_last"oChannelDimension.LAST: imagen en formato (altura, ancho, num_canales). Si no se establece, se usará el formato inferido de la imagen de entrada.
Devuelve
np.ndarray
La imagen rellena.
Rellena la image con el padding (altura, ancho) y el mode especificados.
Convierte un color RGB en un ID único.
transformers.image_transforms.rescale
< source >( 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
Parámetros
- image (
np.ndarray) — La imagen que se va a reescalar. - scale (
float) — La escala a utilizar para reescalar la imagen. - data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen. Si no se proporciona, será el mismo que el de la imagen de entrada. - dtype (
np.dtype, opcional, valor predeterminadonp.float32) — El dtype de la imagen de salida. El valor predeterminado esnp.float32. Se utiliza para la compatibilidad hacia atrás con los extractores de características. - input_data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen de entrada. Si no se proporciona, se inferirá a partir de la imagen de entrada.
Devuelve
np.ndarray
La imagen reescalada.
Escala image por scale.
transformers.image_transforms.resize
< source >( 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
Parámetros
- image (
np.ndarray) — La imagen que se debe redimensionar. - size (
tuple[int, int]) — El tamaño a utilizar para redimensionar la imagen. - resample (
int, opcional, valor predeterminadoPILImageResampling.BILINEAR) — El filtro que se usa para el remuestreo. - reducing_gap (
int, opcional) — Aplica una optimización redimensionando la imagen en dos pasos. A mayorreducing_gap, más se acerca el resultado a un muestreo equitativo. Consulte la documentación correspondiente de Pillow para más detalles. - data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen de salida. Si no se establece, se usará el formato inferido a partir de la entrada. - return_numpy (
bool, opcional, valor predeterminadoTrue) — Indica si se debe devolver la imagen redimensionada como un array de numpy. Si es False, se devuelve un objetoPIL.Image.Image. - input_data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen de entrada. Si no se establece, se utilizará el formato inferido a partir de la entrada.
Devuelve
np.ndarray
La imagen redimensionada.
Redimensiona image a (height, width) especificado por size usando la biblioteca PIL.
transformers.image_transforms.to_pil_image
< source >( 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
Parámetros
- image (
PIL.Image.Imageonumpy.ndarrayotorch.Tensor) — La imagen que se convertirá al formatoPIL.Image. - do_rescale (
bool, opcional) — Indica si se debe aplicar el factor de escalado (para que los valores de píxeles sean enteros entre 0 y 255). El valor predeterminado seráTruesi el tipo de imagen es de punto flotante y la conversión aintprovocaría una pérdida de precisión, yFalseen caso contrario. - image_mode (
str, opcional) — El modo a utilizar para la imagen de PIL. Si no se establece, se utilizará el modo predeterminado para el tipo de imagen de entrada. - input_data_format (
ChannelDimension, opcional) — El formato de la dimensión de canal de la imagen de entrada. Si no se establece, se utilizará el formato inferido a partir de la entrada.
Devuelve
PIL.Image.Image
La imagen convertida.
Converts image to a PIL Image. Optionally rescales it and puts the channel dimension back as the last axis if
needed.
ImageProcessingMixin
Esta es una clase mixin de procesador de imágenes que se utiliza para proporcionar funcionalidad de guardado y carga para extractores de características secuenciales e imágenes.
Convierte una URL o una lista de URLs en los objetos PIL.Image correspondientes.
Si se pasa una única url, el valor devuelto será un único objeto. Si se pasa una lista, se devuelve una lista de objetos.
from_dict
< source >( image_processor_dict: dict**kwargs ) → ImageProcessingMixin
Parámetros
- image_processor_dict (
dict[str, Any]) — Diccionario que se utilizará para instanciar el objeto de procesador de imágenes. Dicho diccionario puede obtenerse de un punto de control preentrenado aprovechando el método to_dict(). - kwargs (
dict[str, Any]) — Parámetros adicionales para inicializar el objeto de procesador de imágenes.
Devuelve
El objeto de procesador de imágenes instanciado a partir de esos parámetros.
Instancia un tipo de ImageProcessingMixin a partir de un diccionario de Python de parámetros.
from_json_file
< source >( json_file: str | os.PathLike ) → A image processor of type ImageProcessingMixin
Parámetros
Devuelve
Un procesador de imágenes de tipo ImageProcessingMixin
El objeto image_processor instanciado a partir de ese archivo JSON.
Instancia un procesador de imágenes de tipo ImageProcessingMixin a partir de la ruta a un archivo JSON de parámetros.
from_pretrained
< source >( 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 )
Parámetros
- pretrained_model_name_or_path (
stroos.PathLike) — Puede ser:- una cadena, el model id de un image_processor preentrenado alojado en un repositorio de modelos en huggingface.co.
- una ruta a un directorio que contenga un archivo de procesador de imágenes guardado usando el método
save_pretrained(), por ejemplo,
./my_model_directory/. - una ruta a un archivo JSON de procesador de imágenes guardado, archivo, p. ej.,
./my_model_directory/preprocessor_config.json.
- cache_dir (
stroos.PathLike, opcional) — Ruta a un directorio en el que se debe almacenar en caché el procesador de imágenes de un modelo preentrenado descargado si no se debe usar la caché estándar. - force_download (
bool, opcional, valor predeterminadoFalse) — Indica si se debe forzar la (re)descarga de los archivos del procesador de imágenes y sobrescribir las versiones en caché si existen. - proxies (
dict[str, str], opcional) — Un diccionario de servidores proxy a utilizar por protocolo o punto de acceso, p. ej.,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}.Los proxies se utilizan en cada solicitud. - token (
strobool, opcional) — El token que se usará como autorización HTTP bearer para archivos remotos. Si esTrue, o no se especifica, se usará el token generado al ejecutarhf auth login(almacenado en~/.huggingface). - revision (
str, opcional, valor predeterminado"main") — La versión específica del modelo que se va a utilizar. Puede ser el nombre de una rama, el nombre de una etiqueta o un id de commit, ya que utilizamos un sistema basado en git para almacenar modelos y otros artefactos en huggingface.co, por lo querevisionpuede ser cualquier identificador permitido por git.
Instanciar un tipo de ImageProcessingMixin desde un procesador de imágenes.
Ejemplos:
# 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
< source >( pretrained_model_name_or_path: str | os.PathLike**kwargs ) → tuple[Dict, Dict]
Parámetros
- pretrained_model_name_or_path (
stroos.PathLike) — El identificador del punto de control preentrenado del que queremos obtener el diccionario de parámetros. - subfolder (
str, opcional, valor predeterminado"") — Si los archivos relevantes se encuentran en una subcarpeta del repositorio del modelo en huggingface.co, puede especificar el nombre de la carpeta aquí. - image_processor_filename (
str, opcional, por defecto"config.json") — El nombre del archivo en el directorio del modelo que se usará para la configuración del procesador de imágenes.
Devuelve
tuple[Dict, Dict]
El diccionario (o diccionarios) que se utilizará para instanciar el objeto de procesador de imágenes.
A partir de pretrained_model_name_or_path, se resuelve en un diccionario de parámetros, para ser utilizado en la instanciación de un procesador de imágenes de tipo ~image_processor_utils.ImageProcessingMixin mediante from_dict.
push_to_hub
< source >( 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 )
Parámetros
- repo_id (
str) — El nombre del repositorio al que deseas subir tu procesador de imágenes. Debe incluir el nombre de tu organización cuando subas a una organización determinada. - commit_message (
str, opcional) — Mensaje para el commit al hacer push. El valor predeterminado es"Upload image processor". - commit_description (
str, opcional) — La descripción del commit que se creará - private (
bool, opcional) — Si se debe hacer el repositorio privado. Si esNone(predeterminado), el repositorio será público a menos que el valor predeterminado de la organización sea privado. Este valor se ignora si el repositorio ya existe. - token (
boolostr, opcional) — El token que se usará como autorización HTTP bearer para archivos remotos. Si esTrue(valor predeterminado), se usará el token generado al ejecutarhf auth login(almacenado en~/.huggingface). - revision (
str, opcional) — Rama a la que se enviarán los archivos subidos. - create_pr (
bool, opcional, valor predeterminadoFalse) — Si se debe crear una PR con los archivos subidos o realizar el commit directamente. - max_shard_size (
intostr, opcional, valor predeterminado"50GB") — Solo aplicable a modelos. El tamaño máximo de un checkpoint antes de ser fragmentado. Los fragmentos del checkpoint tendrán cada uno un tamaño inferior a este valor. Si se expresa como una cadena, debe consistir en dígitos seguidos de una unidad (como"5MB"). - tags (
list[str], opcional) — Lista de etiquetas para publicar en el Hub.
Sube el archivo del procesador de imágenes al 🤗 Model Hub.
Ejemplos:
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
< source >( auto_class = 'AutoImageProcessor' )
Registra esta clase con una clase auto dada. Esto solo debe usarse para procesadores de imagen personalizados, ya que los de la biblioteca ya están mapeados con AutoImageProcessor.
save_pretrained
< source >( save_directory: str | os.PathLikepush_to_hub: bool = False**kwargs )
Parámetros
- save_directory (
stroos.PathLike) — Directorio donde se guardará el archivo JSON del procesador de imágenes (se creará si no existe). - push_to_hub (
bool, opcional, valor predeterminadoFalse) — Indica si se debe subir el modelo al hub de modelos de Hugging Face después de guardarlo. Puedes especificar el repositorio al que deseas subirlo conrepo_id(por defecto, usará el nombre desave_directoryen tu espacio de nombres). - kwargs (
dict[str, Any], opcional) — Argumentos de palabra clave adicionales que se pasan al método push_to_hub().
Guarde un objeto de procesador de imágenes en el directorio save_directory para que pueda recargarse mediante el método de clase from_pretrained().
to_dict
< source >( ) → dict[str, Any]
Devuelve
dict[str, Any]
Diccionario de todos los atributos que componen esta instancia de procesador de imágenes.
Serializa esta instancia en un diccionario de Python.
to_json_file
< source >( json_file_path: str | os.PathLike )
Guarde esta instancia en un archivo JSON.
to_json_string
< source >( ) → str
Devuelve
str
Cadena que contiene todos los atributos que componen esta instancia de feature_extractor en formato JSON.
Serializa esta instancia en una cadena JSON.