Transformers documentation

PP-OCRv6_medium_det

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Model ini disumbangkan ke Hugging Face Transformers pada 2026-05-19.

PP-OCRv6_medium_det

PyTorch

Ikhtisar

PP-OCRv6_medium_det adalah model terbesar dalam seri deteksi PP-OCRv6 yang dikembangkan oleh tim PaddleOCR. Model ini menggunakan LCNetV4 sebagai backbone dan RepLKFPN sebagai leher piramida fitur, menyediakan lokalisasi teks yang akurat di berbagai skenario, termasuk teks tulisan tangan, cetak, berputar, melengkung, dan artistik dalam berbagai bahasa. Model ini berisi 15,5 juta parameter.

Arsitektur Model

Penggunaan

Inferensi input tunggal

Contoh di bawah ini menunjukkan cara mendeteksi teks dengan PP-OCRv6_medium_det menggunakan AutoModel.

AutoModel
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)

Inferensi berbatch

Berikut cara melakukannya dengan PP-OCRv6_medium_det menggunakan AutoModel:

AutoModel
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

kelas transformers.PPOCRV6MediumDetForObjectDetection

< >

( config: PPOCRV6MediumDetConfig )

Parameter

  • config (PPOCRV6MediumDetConfig) — Kelas konfigurasi model dengan semua parameter model. Inisialisasi dengan file konfigurasi tidak memuat bobot yang terkait dengan model, hanya konfigurasinya. Lihat metode from_pretrained() untuk memuat bobot model.

Model PPOCRV6MediumDet untuk tugas deteksi teks.

Model ini mewarisi dari PreTrainedModel. Periksa dokumentasi kelas induk untuk metode generik yang diimplementasikan oleh pustaka untuk semua model (seperti mengunduh atau menyimpan, mengubah ukuran embedding input, memangkas kepala, dll.)

Model ini juga merupakan subclass dari torch.nn.Module PyTorch. Gunakan sebagai PyTorch Module biasa dan merujuk ke dokumentasi PyTorch untuk semua hal yang berkaitan dengan penggunaan dan perilaku umum.

PPOCRV6MediumDetConfig

kelas transformers.PPOCRV6MediumDetConfig

< >

( 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 )

Parameter

  • id2label (Union[dict[int, str], dict[str, str]], opsional) — Peta dari indeks (misalnya indeks prediksi, atau indeks target) ke label.
  • interpolate_mode (str, opsional, defaultnya "nearest") — Mode interpolasi yang digunakan untuk upsampling atau downsampling peta fitur di jaringan neck.
  • backbone_config (Union[dict, ~configuration_utils.PreTrainedConfig], opsional) — Konfigurasi dari model backbone.
  • neck_out_channels (int, opsional, default 256) — Jumlah saluran keluar dari jaringan neck, yang bertanggung jawab untuk fusi dan penyempurnaan fitur.
  • reduce_factor (int, opsional, defaultnya 2) — Faktor reduksi channel yang digunakan dalam blok neck untuk menyeimbangkan kinerja dan kompleksitas.
  • intraclass_block_number (int, opsional, default 4) — Jumlah modul Intra-Class Block yang digunakan untuk meningkatkan representasi fitur.
  • intraclass_block_config (dict, opsional, default None) — Konfigurasi untuk modul Intra-Class Block, jika ada, yang digunakan untuk meningkatkan representasi fitur.
  • scale_factor (int, opsional, defaultnya 2) — Faktor penskalaan yang digunakan untuk penyesuaian resolusi spasial pada peta fitur.
  • scale_factor_list (list[int], opsional, default None) — Daftar faktor penskalaan yang digunakan untuk penyesuaian resolusi spasial pada peta fitur.
  • kernel_list (list[int], opsional, default [3, 2, 2]) — Daftar ukuran kernel untuk lapisan konvolusional dalam jaringan head untuk ekstraksi fitur multi-skala.

Ini adalah kelas konfigurasi untuk menyimpan konfigurasi dari PPOCRV6MediumDetModel. Kelas ini digunakan untuk membuat instans model Pp Ocrv6 Medium Det sesuai dengan argumen yang ditentukan, yang mendefinisikan arsitektur model. Membuat instans konfigurasi dengan nilai bawaan akan menghasilkan konfigurasi yang serupa dengan konfigurasi dari PaddlePaddle/PP-OCRv6_medium_det_safetensors

Objek konfigurasi mewarisi dari PreTrainedConfig dan dapat digunakan untuk mengontrol output model. Baca dokumentasi dari PreTrainedConfig untuk informasi lebih lanjut.

PPOCRV6MediumDetModel

kelas transformers.PPOCRV6MediumDetModel

< >

( config: PPOCRV6MediumDetConfig )

Parameter

  • config (PPOCRV6MediumDetConfig) — Kelas konfigurasi model dengan semua parameter model. Inisialisasi dengan file konfigurasi tidak memuat bobot yang terkait dengan model, hanya konfigurasinya. Lihat metode from_pretrained() untuk memuat bobot model.

Model Pp Ocrv6 Medium Det polos yang menghasilkan hidden-states mentah tanpa head spesifik di atasnya.

Model ini mewarisi dari PreTrainedModel. Periksa dokumentasi kelas induk untuk metode generik yang diimplementasikan oleh pustaka untuk semua model (seperti mengunduh atau menyimpan, mengubah ukuran embedding input, memangkas kepala, dll.)

Model ini juga merupakan subclass dari torch.nn.Module PyTorch. Gunakan sebagai PyTorch Module biasa dan merujuk ke dokumentasi PyTorch untuk semua hal yang berkaitan dengan penggunaan dan perilaku umum.

forward

< >

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

Parameter

Mengembalikan

BaseModelOutputWithNoAttention atau tuple(torch.Tensor)

BaseModelOutputWithNoAttention atau tuple dari torch.Tensor (jika return_dict=False diteruskan atau ketika config.return_dict=False) yang terdiri dari berbagai elemen tergantung pada konfigurasi (PPOCRV6MediumDetConfig) dan input.

Metode forward dari PPOCRV6MediumDetModel menimpa metode khusus __call__.

Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance Module setelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.

  • last_hidden_state (torch.Tensor dengan bentuk (batch_size, num_channels, height, width)) — Urutan hidden-state pada keluaran lapisan terakhir model.

  • hidden_states (tuple(torch.Tensor), opsional, dikembalikan saat output_hidden_states=True dilewatkan atau saat config.output_hidden_states=True) — Tuple dari torch.Tensor (satu untuk output dari embeddings, jika model memiliki lapisan embedding, + satu untuk output dari setiap lapisan) dengan bentuk (batch_size, num_channels, height, width).

    Hidden-states model pada output setiap layer ditambah output embedding awal yang opsional.

Update on GitHub