Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

āĻ›āĻŦāĻŋ āĻĨ⧇āϕ⧇ āϞ⧇āĻ–āĻž (Image to Text OCR)

āĻ›āĻŦāĻŋ āĻĨ⧇āϕ⧇ āϞ⧇āĻ–āĻž āĻŦ⧇āϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĢā§āϰāĻŋ āĻ“ āĻ“āĻĒ⧇āύ-āϏ⧋āĻ°ā§āϏ Android āĻ…ā§āϝāĻžāĻĒāĨ¤ āχāĻ‚āϰ⧇āϜāĻŋ āĻ“ āĻŦāĻžāĻ‚āϞāĻž — āĻĻ⧁āĻŸā§‹ āĻ­āĻžāώāĻžāχ āϏāĻžāĻĒā§‹āĻ°ā§āϟ āĻ•āϰ⧇āĨ¤

āϕ⧇āύ Tesseract OCR

Google-āĻāϰ ML Kit āĻĢā§āϰāĻŋ āĻšāϞ⧇āĻ“ āĻāϤ⧇ āĻŦāĻžāĻ‚āϞāĻž āϞ⧇āĻ–āĻž āĻšā§‡āύāĻžāϰ āϏ⧁āĻŦāĻŋāϧāĻž āύ⧇āχ (āĻļ⧁āϧ⧁ Latin/Chinese/Japanese/Korean/Devanagari āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āϏāĻžāĻĒā§‹āĻ°ā§āϟ āĻ•āϰ⧇)āĨ¤ āϤāĻžāχ āĻāχ āĻ…ā§āϝāĻžāĻĒ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ Tesseract OCR — Google-āĻāϰāχ āϤ⧈āϰāĻŋ āĻāĻ•āϟāĻŋ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ“āĻĒ⧇āύ-āϏ⧋āĻ°ā§āϏ (Apache 2.0) āχāĻžā§āϜāĻŋāύ āϝ⧇āϟāĻž āĻŦāĻžāĻ‚āϞāĻžāϏāĻš ā§§ā§Ļā§Ļ+ āĻ­āĻžāώāĻž āĻšā§‡āύ⧇, āĻāĻŦāĻ‚ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĢā§āϰāĻŋ — āϕ⧋āύ⧋ API key āĻŦāĻž āϏāĻžāĻŦāĻ¸ā§āĻ•ā§āϰāĻŋāĻĒāĻļāύ āϞāĻžāϗ⧇ āύāĻžāĨ¤

Android-āĻ Tesseract āϚāĻžāϞāĻžāύ⧋āϰ āϜāĻ¨ā§āϝ Tesseract4Android āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤

āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇

  1. āĻ…ā§āϝāĻžāĻĒ āĻĒā§āϰāĻĨāĻŽāĻŦāĻžāϰ āϚāĻžāϞ⧁ āĻšāϞ⧇ āχāĻ‚āϰ⧇āϜāĻŋ āĻ“ āĻŦāĻžāĻ‚āϞāĻžāϰ āĻ­āĻžāώāĻžāϰ āĻĄā§‡āϟāĻž (eng.traineddata, ben.traineddata, āĻŽā§‹āϟ āĻĒā§āϰāĻžāϝāĻŧ ā§Ž-ā§§ā§Ļ MB) āĻāĻ•āĻŦāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāύ⧇āϟ āĻĨ⧇āϕ⧇ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻšāϝāĻŧ (tessdata_fast āĻĨ⧇āϕ⧇, āĻāϟāĻžāĻ“ āĻĢā§āϰāĻŋ āĻ“ āĻ“āĻĒ⧇āύ āϏ⧋āĻ°ā§āϏ)āĨ¤
  2. āĻāϰāĻĒāϰ āĻĨ⧇āϕ⧇ āĻ…ā§āϝāĻžāĻĒāϟāĻŋ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ…āĻĢāϞāĻžāχāύ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ — āϕ⧋āύ⧋ āĻ›āĻŦāĻŋ āĻŦāĻž āϤāĻĨā§āϝ āϕ⧋āĻĨāĻžāĻ“ āĻĒāĻžāĻ āĻžāύ⧋ āĻšāϝāĻŧ āύāĻž, āϏāĻŦ āĻĒā§āϰāϏ⧇āϏāĻŋāĻ‚ āĻĢā§‹āύ⧇āχ āĻšāϝāĻŧāĨ¤
  3. āĻ—ā§āϝāĻžāϞāĻžāϰāĻŋ āĻĨ⧇āϕ⧇ āĻ›āĻŦāĻŋ āĻŦāĻžāĻ›āĻžāχ āĻ•āϰ⧁āύ āĻ…āĻĨāĻŦāĻž āϏāϰāĻžāϏāϰāĻŋ āĻ•ā§āϝāĻžāĻŽā§‡āϰāĻžāϝāĻŧ āĻ›āĻŦāĻŋ āϤ⧁āϞ⧁āύāĨ¤
  4. āĻ…ā§āϝāĻžāĻĒ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻ›āĻŦāĻŋ āĻĨ⧇āϕ⧇ āϞ⧇āĻ–āĻž āĻŦ⧇āϰ āĻ•āϰ⧇ āĻĻ⧇āĻ–āĻžāϝāĻŧ; āϏ⧇āϟāĻž āĻ•āĻĒāĻŋ āĻŦāĻž āĻļ⧇āϝāĻŧāĻžāϰ āĻ•āϰāĻž āϝāĻžāϝāĻŧāĨ¤

GitHub Actions āĻĻāĻŋāϝāĻŧ⧇ APK āĻŦāĻŋāĻ˛ā§āĻĄ āĻ•āϰāĻž

.github/workflows/build.yml āĻĒā§āϰāϤāĻŋāϟāĻŋ push āĻ (main āĻŦā§āϰāĻžāĻžā§āĻšā§‡) āĻ…āĻĨāĻŦāĻž āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞāĻŋ (Actions āĻŸā§āϝāĻžāĻŦ → Run workflow) āĻāĻ•āϟāĻŋ āĻĄāĻŋāĻŦāĻžāĻ— APK āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤

āϧāĻžāĻĒ:

  1. āĻāχ āĻĒ⧁āϰ⧋ āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ āĻāĻ•āϟāĻŋ GitHub āϰāĻŋāĻĒā§‹āϤ⧇ push āĻ•āϰ⧁āύāĨ¤
  2. Actions āĻŸā§āϝāĻžāĻŦ⧇ āĻ—āĻŋāϝāĻŧ⧇ āĻŦāĻŋāĻ˛ā§āĻĄ āĻļ⧇āώ āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤
  3. Artifacts āϏ⧇āĻ•āĻļāύ āĻĨ⧇āϕ⧇ text-extractor-debug-apk āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧇ āĻĢā§‹āύ⧇ āχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧁āύāĨ¤

āĻ…āύ⧁āĻŽāϤāĻŋ (Permissions)

  • Internet — āĻļ⧁āϧ⧁ āĻĒā§āϰāĻĨāĻŽāĻŦāĻžāϰ āĻ­āĻžāώāĻžāϰ āĻĄā§‡āϟāĻž āĻĄāĻžāωāύāϞ⧋āĻĄā§‡āϰ āϜāĻ¨ā§āϝāĨ¤
  • Camera — āĻ›āĻŦāĻŋ āϤ⧋āϞāĻžāϰ āϜāĻ¨ā§āϝ (āϐāĻšā§āĻ›āĻŋāĻ•, āύāĻž āĻĻāĻŋāϞ⧇āĻ“ āĻ—ā§āϝāĻžāϞāĻžāϰāĻŋ āĻĨ⧇āϕ⧇ āĻ›āĻŦāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝāĻžāĻŦ⧇)āĨ¤

āĻĒā§āϰāĻœā§‡āĻ•ā§āϟ āĻ—āĻ āύ

app/src/main/java/com/textextractor/app/
  data/     → TessDataManager (āĻ­āĻžāώāĻžāϰ āĻĄā§‡āϟāĻž āĻĄāĻžāωāύāϞ⧋āĻĄ), ImageUtils (āĻ›āĻŦāĻŋ āϞ⧋āĻĄ āĻ“ EXIF āϰ⧋āĻŸā§‡āĻļāύ)
  ocr/      → OcrEngine (Tesseract wrapper)
  ui/       → MainViewModel, HomeScreen, āĻĨāĻŋāĻŽ (Jetpack Compose)
  MainActivity.kt → āĻ›āĻŦāĻŋ āĻŦāĻžāĻ›āĻžāχ/āĻ•ā§āϝāĻžāĻŽā§‡āϰāĻž āĻ“ āĻĒāĻžāϰāĻŽāĻŋāĻļāύ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻŋāĻ‚

āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž

  • āĻšāĻžāϤ⧇ āϞ⧇āĻ–āĻž (handwriting) Tesseract āĻ­āĻžāϞ⧋āĻ­āĻžāĻŦ⧇ āϚāĻŋāύāϤ⧇ āĻĒāĻžāϰ⧇ āύāĻž — āĻāϟāĻž āĻŽā§‚āϞāϤ āĻĒā§āϰāĻŋāĻ¨ā§āϟ āĻ•āϰāĻž/āϟāĻžāχāĻĒ āĻ•āϰāĻž āϞ⧇āĻ–āĻžāϰ āϜāĻ¨ā§āϝ āĻ­āĻžāϞ⧋ āĻ•āĻžāϜ āĻ•āϰ⧇āĨ¤
  • āϖ⧁āĻŦ āĻāĻžāĻĒāϏāĻž āĻŦāĻž āĻ•āĻŽ āφāϞ⧋āϝāĻŧ āϤ⧋āϞāĻž āĻ›āĻŦāĻŋāϤ⧇ āύāĻŋāĻ°ā§āϭ⧁āϞāϤāĻž āĻ•āĻŽā§‡ āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤
  • āφāϰāĻ“ āĻ­āĻžāϞ⧋ āύāĻŋāĻ°ā§āϭ⧁āϞāϤāĻžāϰ āϜāĻ¨ā§āϝ āĻ­āĻŦāĻŋāĻˇā§āϝāϤ⧇ tessdata_best āĻŽāĻĄā§‡āϞ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻž āϝāĻžāϝāĻŧ (āĻĢāĻžāχāϞ āϏāĻžāχāϜ āĻŦāĻĄāĻŧ āĻšāĻŦ⧇, āĻ•āĻŋāĻ¨ā§āϤ⧁ āύāĻŋāĻ°ā§āϭ⧁āϞāϤāĻž āĻŦāĻžāĻĄāĻŧāĻŦ⧇)āĨ¤

About

📝 Image to Text (OCR) — Free, open-source Android app that extracts text from photos and gallery images. Supports English and Bengali via Tesseract OCR, works fully offline after a one-time language pack download.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages