Skip to main content

Fast and accurate text detection library built on CRAFT implementation

Project description

CRAFT: Character-Region Awareness For Text detection

downloads downloads fcakyon twitter
Build status PyPI version License: MIT

Packaged, Pytorch-based, easy to use, cross-platform version of the CRAFT text detector | Paper |

Overview

PyTorch implementation for CRAFT text detector that effectively detect text area by exploring each character region and affinity between characters. The bounding box of texts are obtained by simply finding minimum bounding rectangles on binary map after thresholding character region and affinity scores.

teaser

Getting started

Installation

  • Install using pip:
pip install craft-text-detector

Basic Usage

# import Craft class
from craft_text_detector import Craft

# set image path and export folder directory
image = 'figures/idcard.png' # can be filepath, PIL image or numpy array
output_dir = 'outputs/'

# create a craft instance
craft = Craft(output_dir=output_dir, crop_type="poly", cuda=False)

# apply craft text detection and export detected regions to output directory
prediction_result = craft.detect_text(image)

# unload models from ram/gpu
craft.unload_craftnet_model()
craft.unload_refinenet_model()

Advanced Usage

# import craft functions
from craft_text_detector import (
    read_image,
    load_craftnet_model,
    load_refinenet_model,
    get_prediction,
    export_detected_regions,
    export_extra_results,
    empty_cuda_cache
)

# set image path and export folder directory
image = 'figures/idcard.png' # can be filepath, PIL image or numpy array
output_dir = 'outputs/'

# read image
image = read_image(image)

# load models
refine_net = load_refinenet_model(cuda=True)
craft_net = load_craftnet_model(cuda=True)

# perform prediction
prediction_result = get_prediction(
    image=image,
    craft_net=craft_net,
    refine_net=refine_net,
    text_threshold=0.7,
    link_threshold=0.4,
    low_text=0.4,
    cuda=True,
    long_size=1280
)

# export detected text regions
exported_file_paths = export_detected_regions(
    image=image,
    regions=prediction_result["boxes"],
    output_dir=output_dir,
    rectify=True
)

# export heatmap, detection points, box visualization
export_extra_results(
    image=image,
    regions=prediction_result["boxes"],
    heatmaps=prediction_result["heatmaps"],
    output_dir=output_dir
)

# unload models from gpu
empty_cuda_cache()

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

craft-text-detector-0.4.3.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

craft_text_detector-0.4.3-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file craft-text-detector-0.4.3.tar.gz.

File metadata

  • Download URL: craft-text-detector-0.4.3.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for craft-text-detector-0.4.3.tar.gz
Algorithm Hash digest
SHA256 1fcd60a5115ebdc05c72d2a78eaae038346d89f3309f45db7ee1a69de622e1f9
MD5 5cc2e339be1ece2b8bcf550cf75fcabc
BLAKE2b-256 7d60474d6ebd09c6db746a49af2dee0ac48547c6df35c3eee48056193677c794

See more details on using hashes here.

File details

Details for the file craft_text_detector-0.4.3-py3-none-any.whl.

File metadata

File hashes

Hashes for craft_text_detector-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ea31b26eb53bc8d765f2a39d5896fa50f0b033c94a395543a5f323385c615ba5
MD5 bfdccdb16e6cedde6b7f64368e74561a
BLAKE2b-256 4aa7371d03c2e9dae6b70f329efc84d6bb2d864e2c7d9d32f95ffab2d0771e6b

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