CoolFace
Modelpublic

PaddlePaddle/PP-LCNet_x0_25_textline_ori_safetensors

sourceHugging Faceapache-2.0updated 6mo agoView on Hugging Face
1likes37downloads
Model Card

PP-LCNetx025textlineori

Introduction

The text line orientation classification module primarily distinguishes the orientation of text lines and corrects them using post-processing. In processes such as document scanning and license/certificate photography, to capture clearer images, the capture device may be rotated, resulting in text lines in various orientations. Standard OCR pipelines cannot handle such data well. By utilizing image classification technology, the orientation of text lines can be predetermined and adjusted, thereby enhancing the accuracy of OCR processing. The key accuracy metrics are as follow:

<table> <tr> <th>Model</th> <th>Recognition Avg Accuracy(%)</th> <th>Model Storage Size (M)</th> <th>Introduction</th> </tr> <tr> <td>PP-LCNetx025textlineori</td> <td>98.85</td> <td>0.96</td> <td>Text line classification model based on PP-LCNetx025, with two classes: 0 degrees and 180 degrees</td> </tr> </table>

Model Usage

python
import requests
from PIL import Image
from transformers import AutoImageProcessor, AutoModelForImageClassification

model_path = "PaddlePaddle/PP-LCNet_x0_25_textline_ori_safetensors"
model = AutoModelForImageClassification.from_pretrained(model_path, device_map="auto")
image_processor = AutoImageProcessor.from_pretrained(model_path)

image = Image.open(requests.get("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/textline_rot180_demo.jpg", stream=True).raw)
inputs = image_processor(images=image, return_tensors="pt").to(model.device)
outputs = model(**inputs)
predicted_label = outputs.logits.argmax(-1).item()
print(model.config.id2label[predicted_label])