uniOCR: herramienta de reconocimiento de texto multiplataforma y de código abierto
Últimos recursos sobre IAPublicado hace 10 meses Círculo de intercambio de inteligencia artificial 62.1K 00
Introducción general
uniOCR es una herramienta de reconocimiento de texto de código abierto desarrollada por el equipo mediar-ai. Está basada en el lenguaje Rust y es compatible con macOS, Windows y Linux. Los usuarios pueden utilizarla para extraer texto de imágenes, el funcionamiento es sencillo y gratuito. Las características principales de uniOCR son el soporte multiplataforma y el diseño unificado de la interfaz. Integra varios motores de OCR, como Vision Kit para macOS, Windows OCR y Tesseract, y también admite OCR en la nube, que puede ser utilizado tanto por usuarios particulares como por desarrolladores para gestionar rápidamente tareas de reconocimiento de imágenes y texto. El código del proyecto es abierto, lo que permite a los usuarios modificarlo y ampliarlo libremente.

Lista de funciones
- Es compatible con los sistemas macOS, Windows y Linux y funciona en varias plataformas.
- Existen varias opciones de motor de OCR: macOS Vision, Windows OCR, Tesseract y Cloud OCR.
- Permite extraer texto de una o varias imágenes.
- Proporcionar una interfaz API unificada para facilitar el cambio entre distintos motores de OCR.
- Admite el funcionamiento asíncrono y el procesamiento por lotes para mejorar la eficacia del reconocimiento.
- Permite personalizar ajustes como el idioma, los umbrales de confianza y los tiempos de espera.
- Proyecto de código abierto, los usuarios pueden ver y modificar el código.
Utilizar la ayuda
Proceso de instalación
uniOCR requiere un entorno Rust y las dependencias relacionadas para ejecutarse. A continuación se detallan los pasos a seguir:
- Instalación de óxido
- Abra un terminal e introduzca el siguiente comando para instalar Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Una vez finalizada la instalación, ejecute
rustc --versionCompruebe la versión para asegurarse de que la instalación se ha realizado correctamente.
- Abra un terminal e introduzca el siguiente comando para instalar Rust:
- Descargar el código fuente de uniOCR
- Clona el proyecto localmente usando Git:
git clone https://github.com/mediar-ai/uniOCR.git - Vaya al catálogo de proyectos:
cd uniOCR
- Clona el proyecto localmente usando Git:
- Instalar Tesseract (opcional)
- Si desea utilizar el motor Tesseract, deberá instalarlo adicionalmente:
- macOS: en funcionamiento
brew install tesseract - Ubuntu: en marcha
apt-get install tesseract-ocr - Windows: en funcionamiento
winget install tesseracto descargue el paquete de instalación manualmente.
- macOS: en funcionamiento
- No se requiere ninguna instalación adicional para macOS Vision y Windows OCR.
- Si desea utilizar el motor Tesseract, deberá instalarlo adicionalmente:
- Compilación de proyectos
- Ejecutar en el directorio del proyecto:
cargo build --release - Tras la compilación, el ejecutable se encuentra en
<项目目录>/target/release/.
- Ejecutar en el directorio del proyecto:
- programa de carrera
- Introduzca el siguiente comando para empezar:
cargo run --release
- Introduzca el siguiente comando para empezar:
Cómo utilizarlo
uniOCR permite el reconocimiento de texto mediante llamadas de código. El funcionamiento básico es el siguiente:
- Preparar la imagen
- Coloque la imagen que desea reconocer (por ejemplo
test.png) en el catálogo de proyectos.
- Coloque la imagen que desea reconocer (por ejemplo
- Ejecutar el ejemplo básico
- compilador
<项目目录>/examples/basic.rsEl código es el siguiente:use uniocr::{OcrEngine, OcrProvider}; use anyhow::Result; #[tokio::main] async fn main() -> Result<()> { let engine = OcrEngine::new(OcrProvider::Auto)?; let text = engine.recognize_file("test.png").await?; println!("提取的文字: {}", text); Ok(()) } - Ejecuta el ejemplo:
cargo run --example basic - El programa muestra el texto de la imagen.
- compilador
- Seleccionar motor OCR
- modificaciones
OcrProviderpara cambiar de motor:- Visión macOS:
OcrProvider::MacOS - OCR de Windows:
OcrProvider::Windows - Tesseract:
OcrProvider::Tesseract
- Visión macOS:
- Código de ejemplo:
let engine = OcrEngine::new(OcrProvider::Tesseract)?;
- modificaciones
- archivo por lotes
- compilador
<项目目录>/examples/batch_processing.rs::use uniocr::{OcrEngine, OcrProvider}; use anyhow::Result; #[tokio::main] async fn main() -> Result<()> { let engine = OcrEngine::new(OcrProvider::Auto)?; let images = vec!["img1.png", "img2.png", "img3.png"]; let results = engine.recognize_batch(images).await?; for (i, text) in results.iter().enumerate() { println!("图片 {} 提取的文字: {}", i + 1, text); } Ok(()) } - Corriendo:
cargo run --example batch_processing
- compilador
Función destacada Operación
Ajustes personalizados
- uniOCR permite ajustar los parámetros de reconocimiento. Código de ejemplo:
use uniocr::{OcrEngine, OcrProvider, OcrOptions};
let options = OcrOptions::default()
.languages(vec!["eng", "chi_sim"]) // 设置英文和简体中文
.confidence_threshold(0.8) // 置信度阈值
.timeout(std::time::Duration::from_secs(30)); // 超时 30 秒
let engine = OcrEngine::new(OcrProvider::Auto)?.with_options(options);
- Tras la ejecución, el reconocimiento se ejecutará según lo establecido.
Soporte multilingüe
- Si reconoces el chino, necesitas instalar el paquete de idioma chino para Tesseract:
- macOS/Ubuntu: ejecute el programa
brew install tesseract-langtal vezapt-get install tesseract-ocr-chi-sim - Windows: Descargar
chi_sim.traineddataen el directorio de instalación de Tesseract.tessdataCarpeta. - Establezca el parámetro de idioma en
vec!["chi_sim"].
optimización del rendimiento
- uniOCR utiliza el funcionamiento asíncrono y el procesamiento en paralelo. Para el reconocimiento por lotes, el programa procesa varias imágenes al mismo tiempo para ahorrar tiempo.
- En dispositivos de alto rendimiento como el MacBook Pro M4, macOS Vision puede procesar 3,2 imágenes por segundo con una precisión de 90%.
advertencia
- Las imágenes deben ser claras; las borrosas o con poca luz pueden afectar al reconocimiento.
- Los sistemas Windows deben ser Windows 10 o superior.
- Cloud OCR (por ejemplo, Google Cloud Vision) requiere la configuración de credenciales adicionales, y en este momento no se dispone de un ejemplo oficial completo.
escenario de aplicación
- escaneado de documentos
Los usuarios pueden hacer una foto de un documento en papel, extraer el texto con uniOCR y guardarlo como versión electrónica. - traducción multilingüe
Tras reconocer la lengua extranjera en la imagen, trabaja con herramientas de traducción para generar un texto multilingüe. - Flujos de trabajo automatizados
Los desarrolladores pueden integrar uniOCR en scripts para procesar imágenes por lotes y extraer texto.
CONTROL DE CALIDAD
- ¿Qué sistemas son compatibles con uniOCR?
Compatible con macOS, Windows 10+ y Linux sin necesidad de hardware adicional. - ¿Cómo mejorar la precisión del reconocimiento?
Utilice imágenes de alta calidad, ajuste los umbrales de confianza o elija un motor de OCR adecuado. - ¿Qué debo hacer si Tesseract no reconoce el chino?
Es necesario instalar y configurar los paquetes de idioma chinolanguages(vec!["chi_sim"]).
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...




