Refactor siglip2 fast image processor (#36406)
* refactor siglip2 fast image processor, add unused_kwargs in base fast image processor * nits * change unused_kwargs default to None * update siglip2 fast image proc
This commit is contained in:
@@ -265,12 +265,14 @@ class BaseImageProcessorFast(BaseImageProcessor):
|
||||
device = None
|
||||
model_input_names = ["pixel_values"]
|
||||
valid_kwargs = DefaultFastImageProcessorKwargs
|
||||
unused_kwargs = None
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
**kwargs: Unpack[DefaultFastImageProcessorKwargs],
|
||||
) -> None:
|
||||
super().__init__(**kwargs)
|
||||
kwargs = self.filter_out_unused_kwargs(kwargs)
|
||||
size = kwargs.pop("size", self.size)
|
||||
self.size = (
|
||||
get_size_dict(size=size, default_to_square=kwargs.pop("default_to_square", self.default_to_square))
|
||||
@@ -438,6 +440,19 @@ class BaseImageProcessorFast(BaseImageProcessor):
|
||||
"""
|
||||
return convert_to_rgb(image)
|
||||
|
||||
def filter_out_unused_kwargs(self, kwargs: dict):
|
||||
"""
|
||||
Filter out the unused kwargs from the kwargs dictionary.
|
||||
"""
|
||||
if self.unused_kwargs is None:
|
||||
return kwargs
|
||||
|
||||
for kwarg_name in self.unused_kwargs:
|
||||
if kwarg_name in kwargs:
|
||||
logger.warning_once(f"This processor does not use the `{kwarg_name}` parameter. It will be ignored.")
|
||||
kwargs.pop(kwarg_name)
|
||||
return kwargs
|
||||
|
||||
def _prepare_images_structure(
|
||||
self,
|
||||
images: ImageInput,
|
||||
@@ -634,6 +649,7 @@ class BaseImageProcessorFast(BaseImageProcessor):
|
||||
image_mean: Optional[Union[float, List[float]]],
|
||||
image_std: Optional[Union[float, List[float]]],
|
||||
return_tensors: Optional[Union[str, TensorType]],
|
||||
**kwargs,
|
||||
) -> BatchFeature:
|
||||
# Group images by size for batched resizing
|
||||
grouped_images, grouped_images_index = group_images_by_shape(images)
|
||||
|
||||
Reference in New Issue
Block a user