Skip to main content

Ocr_tools is a Python library that generates synthetic images containing Khmer text and other important toolbox

Project description

OCR toolkits

Introduction

Collection of functions to work with ocr and synthetic data generater

Features

  • Generate synthetic images containing Khmer text
  • Customize text content from a file
  • Choose from multiple font styles
  • Option to apply random blur effect to images
  • Generate corresponding labels for each image

Installation

You can install the Khmer Text Image Generator using pip:

pip install ocr_toolkits

Usage

move files from a folder to another folder filter by extension

from ocr_toolkits import move_files_ext

# Move all files from 'src' directory to 'dst' directory
move_files_ext(
    src_dir = 'src', 
    dst_dir = 'dst1',
)
# Move only .jpg files from 'src' directory to 'dst' directory
move_files_ext(
    src_dir = 'src', 
    dst_dir = 'dst1',
    ext = '.jpg'
)

change files extension from a folder filter by extension

from ocr_toolkits import change_files_ext

# Example usage
change_files_ext(
  src_dir ='src', 
  dst_dir = 'dst', 
  ext = '.png'
)

delete files from a folder to another folder filter by extension

from ocr_toolkits import delete_files_ext


delete_files_ext(
    dir = 'dst',
    ext = '.jpg',
)

autocorrect gender

from ocr_toolkits.postprocess import autocorrect_gender


corrected_gender_eng = autocorrect_gender("ប្រុ", return_eng=False)
print(corrected_gender_eng)  # Output: Male

# Example usage with return_eng=False (Cambodian output)
corrected_gender_kh = autocorrect_gender("ស្រ", return_eng=False)
print(corrected_gender_kh)  # Output: ស្រី

resize image

from ocr_toolkits import resize_image

resized_image = resize_image(
    image_path='./images/img.jpg', 
    width=555,
    height=555,
    save=True,
    save_path='save.jpg'
)
  • create text file to words list eg. dict.txt and put all khmer words you want to gnerate or download sample data here

  • create a folder call font and download all font from this link : font

  • create python script to generate data eg. test.py

from khmerocr_tools import synthetic_data

# Set parameters
image_height = 128
output_folder = 'output'
output_labels_file = 'output/labels.txt'
text_file_path = "dict.txt"
font_option = [1, 2]  

# Generate images and labels
synthetic_data(
    text_file_path, 
    image_height, 
    output_folder, 
    output_labels_file, 
    font_option=font_option, 
    random_blur=True
)

Parameters

  • image_height: Height of the generated images in pixels.
  • output_folder: Path to the folder where generated images will be saved.
  • output_labels_file: Path to the file where labels will be saved.
  • text_file_path: Path to the text file containing Khmer text for generation.
  • font_option: List of integers representing font options.
    • 1 for AKbalthom KhmerLer Regular.
    • 2 for Khmer MEF1 Regular.
    • 3 for Khmer OS Battambang Regular.
    • 4 for Khmer OS Muol Light Regular.
    • 5 for Khmer OS Siemreap Regular.
    • Use an empty list [] to select all available fonts.
  • random_blur: Boolean flag indicating whether to apply random blur effect to images.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ocr-toolkits-0.0.3.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

ocr_toolkits-0.0.3-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file ocr-toolkits-0.0.3.tar.gz.

File metadata

  • Download URL: ocr-toolkits-0.0.3.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for ocr-toolkits-0.0.3.tar.gz
Algorithm Hash digest
SHA256 ad4ceec815f3b100f5e6de24f667e016045f2e7604d51e1baeae199a9e3d2833
MD5 8ae81f4949b1cbb1ea5324dfc0ccb608
BLAKE2b-256 584e46cfac37ce74fc33171ff273b3f58e9c284b65a356ef379c90ec3cb7dfae

See more details on using hashes here.

File details

Details for the file ocr_toolkits-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for ocr_toolkits-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0fcd706d5361a656c7754cabc957ec465390418f08b41bfd6d4a38701c4dce12
MD5 cbed219a4c364c0098a499487df93812
BLAKE2b-256 c3d8a2838f7f62166b4cb0270aed47af95ddaac41e59ce61c02f7db0283da506

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page