Transformers documentation
أدوات لمعالجات الصور
أدوات لمعالجات الصور
تُدرج هذه الصفحة جميع دوال الأداة التي تستخدمها معالجات الصور، وتحديداً التحويلات الوظيفية المستخدمة لمعالجة الصور.
لا تُفيد معظم تلك المعلومات إلا إذا كنت تدرس كود معالجات الصور في المكتبة.
تحويلات الصور
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
المعاملات
- image (
np.ndarray) — الصورة التي سيتم اقتطاعها. - size (
tuple[int, int]) — الحجم المستهدف للصورة المقصوصة. - data_format (
strأوChannelDimension, اختياري) — تنسيق بُعد القناة للصورة الناتجة. يمكن أن يكون أحد ما يلي:"channels_first"أوChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width)."channels_last"أوChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات). إذا لم يتم ضبطه، فسيتم استخدام الصيغة المستنتجة للصورة المدخلة.
- input_data_format (
strأوChannelDimension, اختياري) — تنسيق بُعد القناة للصورة المُدخلة. يمكن أن يكون أحد ما يلي:"channels_first"أوChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width)."channels_last"أوChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات). إذا لم يتم ضبطه، فسيتم استخدام الصيغة المستنتجة للصورة المدخلة.
يعيد
np.ndarray
الصورة المقصوصة.
يقوم بقصّ image إلى size المحدد باستخدام قصّ مركزي. لاحظ أنه إذا كانت الصورة صغيرة جدًا بحيث لا يمكن قصّها إلى الحجم المعطى، فسيتم ملؤها (لذا فإن النتيجة المُعادَة ستكون دائمًا من الحجم size).
يحوّل صناديق الحدود من تنسيق المركز إلى تنسيق الزوايا.
center format: يحتوي على إحداثيات مركز الصندوق وأبعاده من حيث العرض والارتفاع (center_x, center_y, width, height) corners format: يحتوي على إحداثيات الزاوية العلوية اليسرى والزاوية السفلية اليمنى للصندوق (top_left_x, top_left_y, bottom_right_x, bottom_right_y)
يحوّل صناديق الحدود من تنسيق الزوايا إلى تنسيق المركز.
صيغة الزوايا: تحتوي على إحداثيات الزاوية العلوية اليسرى والزاوية السفلية اليمنى للمربع <top_left_x, top_left_y, bottom_right_x, bottom_right_y> صيغة المركز: تحتوي على إحداثيات مركز المربع وأبعاده من حيث العرض والارتفاع <center_x, center_y, width, height>
يحوّل المعرّف الفريد إلى لون 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 )
المعاملات
- image (
np.ndarray) — الصورة التي سيتم تطبيعها. - mean (
floatأوCollection[float]) — المتوسط المستخدم للتطبيع. - std (
floatأوCollection[float]) — انحراف المعيار المستخدم للتطبيع. - data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة الناتجة. إذا لم يتم تعيينه، فسيتم استخدام التنسيق المستنتج من المدخلات. - input_data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يتم تعيينه، فسيتم استخدام التنسيق المستنتج من المدخلات.
يقوم بتطبيع image باستخدام المتوسط والانحراف المعياري المحددين بواسطة mean و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
المعاملات
- image (
np.ndarray) — الصورة التي سيتم توسيطها. - padding (
intأوtuple[int, int]أوIterable[tuple[int, int]]) — الحشو الذي يُطبَّق على حواف محوري الارتفاع والعرض. يمكن أن يكون بأحد التنسيقات الثلاثة التالية:((before_height, after_height), (before_width, after_width))عرض الحشو الفريد لكل محور.((before, after),)يُنتج نفس قيمة الحشو قبل وبعد لكل من الارتفاع والعرض.(pad,)أو int هو اختصار لـ before = after = pad width لجميع المحاور.
- mode (
PaddingMode) — وضع الحشو المستخدم. يمكن أن يكون أحد الخيارات التالية:"constant": يُضيف حشوة بقيمة ثابتة."reflect": يُضيف حشوة باستخدام انعكاس المتجه المُمرَّر على القيمتين الأولى والأخيرة من المتجه على طول كل محور."replicate": يملأ الفراغات بتكرار القيمة الأخيرة على حافة المصفوفة على طول كل محور."symmetric": يُضيف حشوة باستخدام انعكاس المتجه المُمرَّر على طول حافة المصفوفة.
- constant_values (
floatأوIterable[float]، اختياري) — القيمة المستخدمة للتعبئة إذا كانmodeهو"constant". - data_format (
strأوChannelDimension, اختياري) — تنسيق بُعد القناة للصورة الناتجة. يمكن أن يكون أحد ما يلي:"channels_first"أوChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width)."channels_last"أوChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات). إذا لم يتم ضبطه، فسيتم استخدام نفس صيغة الصورة المدخلة.
- input_data_format (
strأوChannelDimension, اختياري) — تنسيق بُعد القناة للصورة المُدخلة. يمكن أن يكون أحد ما يلي:"channels_first"أوChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width)."channels_last"أوChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات). إذا لم يتم ضبطه، فسيتم استخدام الصيغة المستنتجة للصورة المدخلة.
يعيد
np.ndarray
الصورة المُحشوة.
يضيف حشوة إلى image بالحشوة المحددة (الارتفاع، العرض) padding والوضع mode.
يحوّل لون RGB إلى معرّف فريد.
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
المعاملات
- image (
np.ndarray) — الصورة التي سيتم إعادة تحجيمها. - scale (
float) — المقياس المستخدم لإعادة تحجيم الصورة. - data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة. إذا لم يُقدَّم، فسيكون مطابقًا للصورة المدخلة. - dtype (
np.dtype، اختياري، الافتراضيnp.float32) — نوع البيانات (dtype) لصورة الإخراج. الافتراضي هوnp.float32. يُستخدم من أجل التوافق الرجعي مع مستخرِجات الميزات. - input_data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يُقدَّم، فسيتم استنتاجه من الصورة المدخلة.
يعيد
np.ndarray
الصورة المُعاد تحجيمها.
يعيد تحجيم image بمقدار 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
المعاملات
- image (
np.ndarray) — الصورة التي سيتم تغيير حجمها. - size (
tuple[int, int]) — الحجم المستخدم لتغيير حجم الصورة. - resample (
int، اختياري، الافتراضيPILImageResampling.BILINEAR) — المرشّح المستخدم لإعادة أخذ العينات. - reducing_gap (
int, اختياري) — تطبيق التحسين عن طريق تغيير حجم الصورة في خطوتين. كلما كانreducing_gapأكبر، كان الناتج أقرب إلى إعادة أخذ العينات العادلة. راجع وثائق Pillow المقابلة لمزيد من التفاصيل. - data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة الناتجة. إذا لم يتم تعيينه، فسيتم استخدام التنسيق المستنتج من المدخلات. - return_numpy (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان سيتم إرجاع الصورة المُعاد تحديدها لحجمها كمصفوفة numpy أم لا. إذا كانت القيمة False، يتم إرجاع كائنPIL.Image.Image. - input_data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يتم تعيينه، فسيتم استخدام التنسيق المستنتج من المدخلات.
يعيد
np.ndarray
الصورة المُعاد تغيير حجمها.
يُعيد تحديد حجم image إلى (height, width) المحدد بواسطة size باستخدام مكتبة 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
المعاملات
- image (
PIL.Image.Imageأوnumpy.ndarrayأوtorch.Tensor) — الصورة التي سيتم تحويلها إلى صيغةPIL.Image. - do_rescale (
bool، اختياري) — ما إذا كان سيتم تطبيق عامل التحجيم (لتحويل قيم البكسل إلى أعداد صحيحة بين 0 و255). سيكون الافتراضيTrueإذا كان نوع الصورة من النوع العائم وكان التحويل إلىintسيؤدي إلى فقدان الدقة، وFalseفي الحالات الأخرى. - image_mode (
str، اختياري) — الوضع المستخدم لصورة PIL. إذا لم يُضبط، فسيتم استخدام الوضع الافتراضي لنوع الصورة المُدخلة. - input_data_format (
ChannelDimension، اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يتم تعيينه، فسيتم استخدام التنسيق المستنتج من المدخلات.
يعيد
PIL.Image.Image
الصورة المحوّلة.
يحوّل image إلى صورة PIL. ويمكنه إعادة تحجيم الصورة اختيارياً، وإعادة بُعد القناة ليكون المحور الأخير عند الحاجة.
ImageProcessingMixin
هذا مزيج لمعالج الصور يُستخدم لتوفير وظائف الحفظ/التحميل لمستخرِقات الميزات التسلسلية والصور.
تحويل عنوان URL واحد أو قائمة عناوين إلى كائنات PIL.Image المقابلة.
إذا تم تمرير عنوان URL واحد، فسيكون القيمة المُعادَة كائنًا واحدًا. أما إذا تم تمرير قائمة، فسيتم إرجاع قائمة من الكائنات.
from_dict
< source >( image_processor_dict: dict**kwargs ) → ImageProcessingMixin
المعاملات
- image_processor_dict (
dict[str, Any]) — قاموس سيُستخدم لإنشاء كائن معالج الصور. يمكن استرجاع مثل هذا القاموس من نقطة تحقق مُدرَّبة مسبقًا بالاستفادة من طريقة to_dict(). - kwargs (
dict[str, Any]) — معلمات إضافية يتم من خلالها تهيئة كائن معالج الصور.
يعيد
كائن معالج الصور المُستخدَم من تلك المعاملات.
يُحدّد نوعًا من ImageProcessingMixin من قاموس Python للمعاملات.
from_json_file
< source >( json_file: str | os.PathLike ) → A image processor of type ImageProcessingMixin
المعاملات
يعيد
معالج صور من النوع ImageProcessingMixin
كائن image_processor المُستخدَم من ذلك الملف بصيغة JSON.
يُحدّد معالج صور من النوع ImageProcessingMixin من المسار إلى ملف JSON يحتوي على المعلمات.
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 )
المعاملات
- pretrained_model_name_or_path (
strأوos.PathLike) — يمكن أن يكون هذا:- سلسلة نصية، وهي معرف النموذج لمعالج صور مُدرَّب مسبقًا مستضاف داخل مستودع نموذج على huggingface.co.
- مسار إلى مجلد يحتوي على معالج صور محفوظ باستخدام طريقة
save_pretrained()، على سبيل المثال
./my_model_directory/. - مسار إلى ملف JSON لمعالج صور محفوظ، على سبيل المثال
./my_model_directory/preprocessor_config.json.
- cache_dir (
strأوos.PathLike، اختياري) — المسار إلى مجلد يجب تخزين مُعالج الصور المُسبق التدريب في الموديل المُحمّل فيه إذا لم يُستخدم المجلد المؤقت القياسي. - force_download (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان يجب إجبار (إعادة) تنزيل ملفات معالج الصور وتجاوز الإصدارات المخزنة مؤقتًا إذا كانت موجودة. - proxies (
dict[str, str], اختياري) — قاموس لخوادم الوكيل (proxy) للاستخدام حسب البروتوكول أو نقطة النهاية، على سبيل المثال{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}.تُستخدم هذه الوكلاء في كل طلب. - token (
strأوbool، اختياري) — الرمز الذي يُستخدم كتفويض حامل HTTP للملفات البعيدة. إذا كانTrue، أو لم يُحدد، فسيتم استخدام الرمز الذي تم إنشاؤه عند تشغيلhf auth login(المخزَّن في~/.huggingface). - revision (
str، اختياري، القيمة الافتراضية"main") — الإصدار المحدد من النموذج الذي سيتم استخدامه. يمكن أن يكون اسم فرع، أو اسم وسم، أو معرف commit، نظرًا لاستخدامنا نظامًا قائمًا على git لتخزين النماذج والمخرجات الأخرى على huggingface.co، لذا يمكن أن يكونrevisionأي معرّف يسمح به git.
أنشئ نوعًا من ImageProcessingMixin من معالج الصور.
أمثلة:
# 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]
المعاملات
- pretrained_model_name_or_path (
strأوos.PathLike) — المعرّف لنقطة التفتيش المُدرَّبة مسبقًا التي نرغب في الحصول على قاموس المعلمات منها. - subfolder (
str، اختياري، الافتراضي"") — في حال كانت الملفات ذات الصلة موجودة داخل مجلد فرعي من مستودع النموذج على huggingface.co، يمكنك تحديد اسم المجلد هنا. - image_processor_filename (
str، اختياري، الافتراضي"config.json") — اسم الملف في مجلد النموذج الذي يُستخدم لإعدادات معالج الصور.
يعيد
tuple[Dict, Dict]
المعجم(ات) الذي سيتم استخدامه لإنشاء كائن معالج الصور.
من pretrained_model_name_or_path، يتم التحويل إلى قاموس من المعلمات، ليُستخدم في إنشاء معالج صور من النوع ~image_processor_utils.ImageProcessingMixin باستخدام 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 )
المعاملات
- repo_id (
str) — اسم المستودع الذي تريد دفع مُعالج الصور إليه. يجب أن يحتوي على اسم مؤسستك عند الدفع إلى مؤسسة معينة. - commit_message (
str, اختياري) — الرسالة التي سيتم الالتزام بها أثناء الدفع. ستكون الافتراضية"Upload image processor". - commit_description (
str, اختياري) — وصف الالتزام الذي سيتم إنشاؤه - private (
bool، اختياري) — ما إذا كان سيتم جعل المستودع خاصًا. إذا كانNone(الافتراضي)، فسيكون المستودع عامًا ما لم يكن الافتراضي للمنظمة هو الخاص. يتم تجاهل هذه القيمة إذا كان المستودع موجودًا بالفعل. - token (
boolأوstr، اختياري) — الرمز الذي يُستخدم كتفويض حامل HTTP للملفات البعيدة. إذا كانTrue(الافتراضي)، فسيتم استخدام الرمز الذي تم إنشاؤه عند تشغيلhf auth login(المخزَّن في~/.huggingface). - revision (
str، اختياري) — الفرع الذي سيتم دفع الملفات المرفوعة إليه. - create_pr (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان سيتم إنشاء طلب سحب (PR) بالملفات المرفوعة أم الالتزام مباشرة. - max_shard_size (
intأوstr، اختياري، القيمة الافتراضية"50GB") — ينطبق على النماذج فقط. الحد الأقصى لحجم نقطة التفتيش قبل تقسيمها إلى أجزاء. ستكون نقاط التفتيش المقسمة كل منها بحجم أقل من هذا الحجم. إذا تم التعبير عنه كنص، فيجب أن يتكون من أرقام تليها وحدة (مثل"5MB"). - tags (
list[str]، اختياري) — قائمة بالوسوم التي سيتم دفعها إلى Hub.
ارفع ملف معالج الصور إلى 🤗 Model Hub.
أمثلة:
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' )
سجّل هذه الفئة مع فئة تلقائية محددة. يجب استخدام هذا فقط لمعالجات الصور المخصصة، لأن المعالجات الموجودة في المكتبة مُربط مسبقًا مع AutoImageProcessor.
save_pretrained
< source >( save_directory: str | os.PathLikepush_to_hub: bool = False**kwargs )
المعاملات
- save_directory (
strأوos.PathLike) — المجلد الذي سيتم حفظ ملف JSON لمعالج الصور فيه (سيتم إنشاؤه إذا لم يكن موجودًا). - push_to_hub (
bool، اختياري، الافتراضيFalse) — ما إذا كان سيتم دفع نموذجك إلى مركز نماذج Hugging Face بعد حفظه. يمكنك تحديد المستودع الذي تريد الدفع إليه باستخدامrepo_id(سيكون الافتراضي هو اسمsave_directoryفي نطاقك). - kwargs (
dict[str, Any]، اختياري) — حجج إضافية بأسماء تُمرَّر إلى طريقة push_to_hub().
احفظ كائن معالج الصور في المجلد save_directory حتى يمكن إعادة تحميله باستخدام طريقة الفئة from_pretrained().
to_dict
< source >( ) → dict[str, Any]
يعيد
dict[str, Any]
قاموس بجميع السمات التي تُشكّل هذا المثال من معالج الصور.
يسلسل هذه النسخة إلى قاموس بايثون.
to_json_file
< source >( json_file_path: str | os.PathLike )
احفظ هذه النسخة في ملف JSON.
to_json_string
< source >( ) → str
يعيد
str
سلسلة تحتوي على جميع السمات التي تُشكّل هذا المثال من feature_extractor بتنسيق JSON.
يسلسل هذه النسخة إلى نص JSON.