일반 소개
uniOCR은 mediar-ai 팀이 개발한 오픈 소스 텍스트 인식 도구입니다. Rust 언어를 기반으로 하며 macOS, Windows, Linux를 지원합니다. 사용자는 이미지에서 텍스트를 추출하는 데 사용할 수 있으며, 조작이 간단하고 무료입니다. uniOCR의 핵심 기능은 크로스 플랫폼 지원과 통합 인터페이스 디자인입니다. macOS용 비전 키트, Windows OCR, 테서랙트 등 여러 OCR 엔진을 통합하고, 개인 사용자와 개발자 모두 이미지 및 텍스트 인식 작업을 빠르게 처리할 수 있는 클라우드 OCR도 지원합니다. 프로젝트 코드는 공개되어 있어 사용자가 자유롭게 수정하고 확장할 수 있습니다.

기능 목록
- macOS, Windows 및 Linux 시스템을 지원하며 크로스 플랫폼에서 실행됩니다.
- 여러 OCR 엔진 옵션을 사용할 수 있습니다: macOS Vision, Windows OCR, 테서랙트 및 클라우드 OCR.
- 단일 이미지 또는 여러 이미지에서 텍스트 추출을 지원합니다.
- 다양한 OCR 엔진 간의 전환을 용이하게 하는 통합 API 인터페이스를 제공합니다.
- 비동기 작업 및 일괄 처리를 지원하여 인식 효율성을 높입니다.
- 언어, 신뢰도 임계값, 시간 초과 등의 설정을 사용자 지정할 수 있습니다.
- 오픈 소스 프로젝트에서 사용자는 코드를 보고 수정할 수 있습니다.
도움말 사용
설치 프로세스
uniOCR을 실행하려면 Rust 환경 및 관련 종속성이 필요합니다. 자세한 단계는 다음과 같습니다:
- Rust 설치
- 터미널을 열고 다음 명령을 입력하여 Rust를 설치합니다:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- 설치가 완료되면 다음을 실행합니다.
rustc --version
버전을 확인하여 설치가 성공적으로 완료되었는지 확인합니다.
- 터미널을 열고 다음 명령을 입력하여 Rust를 설치합니다:
- uniOCR 소스 코드 다운로드
- Git을 사용하여 프로젝트를 로컬에 복제합니다:
git clone https://github.com/mediar-ai/uniOCR.git
- 프로젝트 카탈로그로 이동합니다:
cd uniOCR
- Git을 사용하여 프로젝트를 로컬에 복제합니다:
- 테서랙트 설치(선택 사항)
- 테서랙트 엔진을 사용하려면 추가로 설치해야 합니다:
- macOS: 실행 중
brew install tesseract
- 우분투: 실행 중
apt-get install tesseract-ocr
- Windows: 실행 중
winget install tesseract
를 클릭하거나 설치 패키지를 수동으로 다운로드하세요.
- macOS: 실행 중
- macOS Vision 및 Windows OCR에는 추가 설치가 필요하지 않습니다.
- 테서랙트 엔진을 사용하려면 추가로 설치해야 합니다:
- 프로젝트 컴파일하기
- 프로젝트 디렉토리에서 실행합니다:
cargo build --release
- 컴파일 후 실행 파일은 다음 위치에 있습니다.
<项目目录>/target/release/
.
- 프로젝트 디렉토리에서 실행합니다:
- 실행 중인 프로그램
- 시작하려면 다음 명령을 입력합니다:
cargo run --release
- 시작하려면 다음 명령을 입력합니다:
사용 방법
uniOCR은 코드 호출을 통해 텍스트 인식을 가능하게 합니다. 기본 작동 방식은 다음과 같습니다:
- 사진 준비
- 인식할 이미지를 배치합니다(예
test.png
)를 프로젝트 카탈로그에 추가합니다.
- 인식할 이미지를 배치합니다(예
- 기본 예제 실행
- 컴파일러
<项目目录>/examples/basic.rs
코드는 다음과 같습니다: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(()) }
- 예제를 실행합니다:
cargo run --example basic
- 프로그램이 이미지의 텍스트를 출력합니다.
- 컴파일러
- OCR 엔진 선택
- 수정
OcrProvider
매개변수를 사용하여 엔진을 전환합니다:- macOS Vision:
OcrProvider::MacOS
- Windows OCR:
OcrProvider::Windows
- 테서랙트:
OcrProvider::Tesseract
- macOS Vision:
- 샘플 코드:
let engine = OcrEngine::new(OcrProvider::Tesseract)?;
- 수정
- 배치 파일
- 컴파일러
<项目目录>/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(()) }
- 실행 중입니다:
cargo run --example batch_processing
- 컴파일러
주요 기능 작동
사용자 지정 설정
- uniOCR은 인식 매개변수 조정을 지원합니다. 샘플 코드:
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);
- 실행 후 설정한 대로 인식이 실행됩니다.
다국어 지원
- 중국어를 인식할 수 있는 경우 테서랙트용 중국어 팩을 설치해야 합니다:
- macOS/Ubuntu: 다음을 실행합니다.
brew install tesseract-lang
어쩌면apt-get install tesseract-ocr-chi-sim
- Windows: 다운로드
chi_sim.traineddata
를 설치합니다.tessdata
폴더. - 언어 매개 변수를 다음과 같이 설정합니다.
vec!["chi_sim"]
.
성능 최적화
- uniOCR은 비동기 작업과 병렬 처리를 사용합니다. 일괄 인식을 위해 여러 이미지를 동시에 처리하여 시간을 절약합니다.
- M4 MacBook Pro와 같은 고성능 기기에서 macOS Vision은 초당 3.2장의 이미지를 90%의 정확도로 처리할 수 있습니다.
주의
- 이미지가 선명해야 하며 흐릿하거나 조명이 어두우면 인식에 영향을 줄 수 있습니다.
- Windows 시스템은 Windows 10 이상이어야 합니다.
- 클라우드 OCR(예: Google Cloud Vision)을 사용하려면 추가 자격 증명을 구성해야 하며, 현재 공식 예제는 제공되지 않습니다.
애플리케이션 시나리오
- 문서 스캔
사용자는 종이 문서를 사진으로 찍고 uniOCR을 사용하여 텍스트를 추출한 후 전자 버전으로 저장할 수 있습니다. - 다국어 번역
이미지의 외국어를 인식한 후 번역 도구와 함께 작동하여 다국어 텍스트를 생성합니다. - 자동화된 워크플로
개발자는 uniOCR을 스크립트에 통합하여 이미지를 일괄 처리하고 텍스트를 추출할 수 있습니다.
QA
- 어떤 시스템이 uniOCR을 지원하나요?
추가 하드웨어 없이 macOS, Windows 10+ 및 Linux를 지원합니다. - 인식 정확도를 높이려면 어떻게 해야 하나요?
고품질 이미지를 사용하거나, 신뢰도 임계값을 조정하거나, 적합한 OCR 엔진을 선택하세요. - 테서랙트가 중국어를 인식하지 못하면 어떻게 하나요?
중국어 팩을 설치 및 설정해야 합니다.languages(vec!["chi_sim"])
.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...