基于CRAFT实现的快速准确文本检测库

craft-text-detector的Python项目详细描述


CRAFT:用于文本检测的字符区域感知

PyPI versionConda versionCI

打包,基于Pythorch,易于使用,跨平台版本的CRAFT text detector | Paper

概述

工艺文本检测器的Pythorch实现,通过探索每个字符区域和字符之间的亲和力来有效地检测文本区域。在对字符区域和相似度进行阈值化后,只需在二值映射图上寻找最小边界矩形,即可得到文本的边界框。在

入门

安装

  • 使用conda for Linux、Mac和Windows安装(首选):
conda install -c fcakyon craft-text-detector
  • 使用pip for Linux和Mac安装:
^{pr2}$

基本用法

# import Craft classfromcraft_text_detectorimportCraft# set image path and export folder directoryimage_path='figures/idcard.png'output_dir='outputs/'# create a craft instancecraft=Craft(output_dir=output_dir,crop_type="poly",cuda=False)# apply craft text detection and export detected regions to output directoryprediction_result=craft.detect_text(image_path)# unload models from ram/gpucraft.unload_craftnet_model()craft.unload_refinenet_model()

高级用法

# import craft functionsfromcraft_text_detectorimport(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 directoryimage_path='figures/idcard.png'output_dir='outputs/'# read imageimage=read_image(image_path)# load modelsrefine_net=load_refinenet_model(cuda=True)craft_net=load_craftnet_model(cuda=True)# perform predictionprediction_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 regionsexported_file_paths=export_detected_regions(image_path=image_path,image=image,regions=prediction_result["boxes"],output_dir=output_dir,rectify=True)# export heatmap, detection points, box visualizationexport_extra_results(image_path=image_path,image=image,regions=prediction_result["boxes"],heatmaps=prediction_result["heatmaps"],output_dir=output_dir)# unload models from gpuempty_cuda_cache()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用jaxrpc的Java eclipse WebService客户端   java编程方式在对象上写入名称   java Spring批处理:重试后跳过   java Android错误:错误:任务执行失败:应用程序:transformClassesWithDexForDebug'   带有清单文件nullPointerException的java Android元数据   spring Java Quartz调度作业停止运行   JavaMockito:如何在不调用实际方法的情况下,模拟带有参数和无效返回类型的静态方法?   java Tomcat连接池问题无法在关闭的连接上调用方法   java如何交换列表中的项目?   java如何停止线程并通过Toast在线程中正确显示文本?   java为什么连续写入OutputStream时偏移量0不会导致重复字节?   java我无法生成头文件   不兼容的返回类型错误java   修改值后键值对的java Jolt转换规范   java有自动更新Javadoc的工具吗?   java线程如何在ints自身实例类中共享变量   java继承一个非gwt模块   java Hibernate xml配置   使用netty4异步调用的java链接HTTP请求响应