Transformers documentation
PP-OCRv6_medium_det
Bu model, 2026-05-19 tarihinde Hugging Face Transformers'a katkıda bulunulmuştur.
PP-OCRv6_medium_det
Genel Bakış
PP-OCRv6_medium_det, PaddleOCR ekibi tarafından geliştirilen PP-OCRv6 algılama serisindeki en büyük modeldir. Omurga olarak LCNetV4, özellik piramidi boynu olarak RepLKFPN kullanır; el yazısı, basılı, döndürülmüş, eğri ve sanatsal metinler dahil olmak üzere çok dilli çeşitli senaryolarda doğru metin konumlandırması sağlar. Model 15,5M parametre içerir.
Model Mimarisi
Kullanım
Tek girişli çıkarım
Aşağıdaki örnek, AutoModel kullanarak PP-OCRv6_medium_det ile metin algılamanın nasıl yapılacağını göstermektedir.
from io import BytesIO
from huggingface_hub.utils import httpx
from PIL import Image
from transformers import AutoImageProcessor, AutoModelForObjectDetection
from transformers.image_utils import load_image
model_path = "PaddlePaddle/PP-OCRv6_medium_det_safetensors"
model = AutoModelForObjectDetection.from_pretrained(model_path, device_map="auto")
image_processor = AutoImageProcessor.from_pretrained(model_path)
image_url = "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/paddle_general_ocr_001.png"
image = load_image(image_url)
inputs = image_processor(images=image, return_tensors="pt").to(model.device)
outputs = model(**inputs)
results = image_processor.post_process_object_detection(
outputs,
target_sizes=inputs["target_sizes"],
threshold=0.2,
box_threshold=0.45,
max_candidates=3000,
unclip_ratio=1.4,
)
for result in results:
print(result)Toplu çıkarım
PP-OCRv6_medium_det kullanarak AutoModel ile bunu nasıl yapabileceğiniz aşağıda gösterilmektedir:
from io import BytesIO
from huggingface_hub.utils import httpx
from PIL import Image
from transformers import AutoImageProcessor, AutoModelForObjectDetection
from transformers.image_utils import load_image
model_path = "PaddlePaddle/PP-OCRv6_medium_det_safetensors"
model = AutoModelForObjectDetection.from_pretrained(model_path, device_map="auto")
image_processor = AutoImageProcessor.from_pretrained(model_path)
image_url = "https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/paddle_general_ocr_001.png"
image = load_image(image_url)
inputs = image_processor(images=[image, image], return_tensors="pt").to(model.device)
outputs = model(**inputs)
results = image_processor.post_process_object_detection(
outputs,
target_sizes=inputs["target_sizes"],
threshold=0.2,
box_threshold=0.45,
max_candidates=3000,
unclip_ratio=1.4,
)
for result in results:
print(result)PPOCRV6MediumDetForObjectDetection
sınıf transformers.PPOCRV6MediumDetForObjectDetection
< source >( config: PPOCRV6MediumDetConfig )
Parametreler
- config (PPOCRV6MediumDetConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Metin algılama görevleri için PPOCRV6MediumDet modeli.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
PPOCRV6MediumDetConfig
sınıf transformers.PPOCRV6MediumDetConfig
< source >( 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 = Falselabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Noneid2label: dict[int, str] | dict[str, str] | None = Noneinterpolate_mode: str = 'nearest'backbone_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneneck_out_channels: int = 256reduce_factor: int = 2intraclass_block_number: int = 4intraclass_block_config: dict | None = Nonescale_factor: int = 2scale_factor_list: list | None = Nonekernel_list: list | None = None )
Parametreler
- id2label (
Union[dict[int, str], dict[str, str]], isteğe bağlı) — Dizin (örneğin tahmin dizini veya hedef dizini) ile etiket arasındaki eşleme. - interpolate_mode (
str, isteğe bağlı, varsayılan"nearest") — Neck ağındaki özellik haritalarının büyütülmesi veya küçültülmesinde kullanılan interpolasyon modu. - backbone_config (
Union[dict, ~configuration_utils.PreTrainedConfig], isteğe bağlı) — Backbone modelinin yapılandırması. - neck_out_channels (
int, isteğe bağlı, varsayılan 256) — Özellik füzyonu ve iyileştirmesinden sorumlu olan neck ağından gelen çıktı kanal sayısı. - reduce_factor (
int, isteğe bağlı, varsayılan 2) — Performans ve karmaşıklığı dengelemek için boyun bloklarında kullanılan kanal azaltma çarpanı. - intraclass_block_number (
int, isteğe bağlı, varsayılan 4) — Özellik temsilini güçlendirmek için kullanılan Intra-Class Block modüllerinin sayısı. - intraclass_block_config (
dict, isteğe bağlı, varsayılanNone) — Özellik temsilini güçlendirmek için kullanılan varsa, Intra-Class Block modülleri için yapılandırma. - scale_factor (
int, isteğe bağlı, varsayılan 2) — Özellik haritalarında uzamsal çözünürlük ayarları için kullanılan ölçekleme çarpanı. - scale_factor_list (
list[int], isteğe bağlı, varsayılanNone) — Özellik haritalarında uzamsal çözünürlük ayarları için kullanılan ölçekleme katsayılarının listesi. - kernel_list (
list[int], opsiyonel, varsayılan[3, 2, 2]) — Çok ölçekli özellik çıkarımı için baş ağındaki konvolüsyon katmanlarında kullanılan çekirdek boyutlarının listesi.
Bu, bir PPOCRV6MediumDetModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Pp Ocrv6 Medium Det modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneklendiğinde, PaddlePaddle/PP-OCRv6_medium_det_safetensors ile benzer bir yapılandırma elde edilir.
Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.
PPOCRV6MediumDetModel
sınıf transformers.PPOCRV6MediumDetModel
< source >( config: PPOCRV6MediumDetConfig )
Parametreler
- config (PPOCRV6MediumDetConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.
Üzerinde herhangi bir özel head bulunmayan, ham hidden-states çıkaran çıplak Pp Ocrv6 Medium Det Model.
Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.
Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.
forward
< source >( pixel_values: Tensor**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithNoAttention or tuple(torch.Tensor)
Parametreler
- pixel_values (
torch.Tensor, şekli(batch_size, num_channels, image_size, image_size)) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri PPOCRV5ServerDetImageProcessor kullanılarak elde edilebilir. Ayrıntılar için PPOCRV5ServerDetImageProcessor.call() bölümüne bakın (processor_class, görüntüleri işlemek için PPOCRV5ServerDetImageProcessor kullanır).
Dönüş değeri
BaseModelOutputWithNoAttention veya tuple(torch.Tensor)
BaseModelOutputWithNoAttention veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırmaya (PPOCRV6MediumDetConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.
PPOCRV6MediumDetModel forward metodu, __call__ özel metodunu geçersiz kılar.
İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine
Moduleörneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.
last_hidden_state (
torch.Tensor, şekli(batch_size, num_channels, height, width)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.hidden_states (
tuple(torch.Tensor), isteğe bağlı,output_hidden_states=Truegeçirildiğinde veyaconfig.output_hidden_states=Trueolduğunda döndürülür) —torch.Tensor(modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren,(batch_size, num_channels, height, width)biçiminde bir demet.Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.