首页 > 其他分享 >怎么搭建图片转文本GOT-OCR2.0

怎么搭建图片转文本GOT-OCR2.0

时间:2024-10-24 10:21:09浏览次数:7  
标签:2.0 Off OCR2.0 -- file GOT 文本 name

Github地址
http://gitlab.xiaoxingcloud.com/ai/GOT-OCR2.0.git

  1. 介绍
    GOT-OCR2.0是一款用于图片转文字开源软件
  2. 环境查看
    系统环境
# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.5 LTS
Release:	22.04
Codename:	jammy
# uname -a
Linux AiServer003187 6.8.0-45-generic #45~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 11 15:25:05 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

软件环境

#nvidia-smi 
Thu Oct 24 09:34:48 2024       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.107.02             Driver Version: 550.107.02     CUDA Version: 12.4     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 4090        Off |   00000000:18:00.0 Off |                  Off |
| 30%   34C    P8             28W /  450W |       7MiB /  24564MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
|   1  NVIDIA GeForce RTX 4090        Off |   00000000:3B:00.0 Off |                  Off |
| 30%   33C    P8             35W /  450W |       7MiB /  24564MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
|   2  NVIDIA GeForce RTX 4090        Off |   00000000:86:00.0 Off |                  Off |
| 30%   34C    P8             19W /  450W |       7MiB /  24564MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+

# conda --version
conda 23.7.4

# python --version
Python 3.10.15

  1. 搭建
    克隆代码
# git clone https://github.com/Ucas-HaoranWei/GOT-OCR2.0.git

创建虚拟环境安装依赖包

# cd GOT-OCR2.0/GOT-OCR-2.0-master/GOT
# conda create -n got python=3.10 -y
# conda activate got
# pip install -e .

安装Flash-Attention

# pip install ninja
# pip install flash-attn --no-build-isolation

下载权重

# huggingface
# https://huggingface.co/stepfun-ai/GOT-OCR2_0/blob/main/model.safetensors
# Google
# https://drive.google.com/drive/folders/1OdDtsJ8bFJYlNUzCQG4hRkUL6V-qBQaN
# 百度网盘code: OCR2
# https://pan.baidu.com/s/1G4aArpCOt6I_trHv_1SE2g#list/path=%2F
  1. Demo
  • plain texts OCR
# python3 GOT/demo/run_ocr_2.0.py --model-name GOT_weights/ --image-file file.png --type orc

解析

# python3 GOT/demo/run_ocr_2.0.py 脚本
# --model-name GOT_weights/ 指定权重位置
# --image-file file.png 需要转换的图片
# --type orc 转换格式

输出如下
image

  • format texts OCR
    带格式转换
# python3 GOT/demo/run_ocr_2.0.py --model-name GOT_weights/ --image-file file.png --type format

输出如下
image

  • fine-grained OCR
# python3 GOT/demo/run_ocr_2.0.py  --model-name  GOT_weights/  --image-file  file.png  --type format/ocr --box [x1,y1,x2,y2]

这里的参数x1 y1 x2 y2 我理解为一个坐标用于标识需要转换的区域
image

  • multi-crop OCR
# python3 GOT/demo/run_ocr_2.0_crop.py --model-name GOT_weights/ --image-file file.png

输出如下
image

  • multi-page OCR (the image path contains multiple .png files)
    转换文件夹下的图片
# python GOT/demo/run_ocr_2.0_crop.py --model-name GOT_weights/ --image-file /root/GOT-OCR2.0/GOT-OCR-2.0-master/ --multi-page

输出如下
image

  • render the formatted OCR results:
#  python3 GOT/demo/run_ocr_2.0.py --model-name GOT_weights/ --image-file file.png --type format --render

输出如下
image

标签:2.0,Off,OCR2.0,--,file,GOT,文本,name
From: https://www.cnblogs.com/minseo/p/18499064

相关文章

  • ECharts饼图-富文本标签,附视频讲解与代码下载
    引言: 在数据可视化的世界里,ECharts凭借其丰富的图表类型和强大的配置能力,成为了众多开发者的首选。今天,我将带大家一起实现一个饼图图表,通过该图表我们可以直观地展示和分析数据。此外,我还将提供详细的视频讲解和代码下载链接,帮助大家快速上手。一、图表效果预览 二、视......
  • 【HarmonyOS】根据文本内容动态测算文本控件宽高
    【HarmonyOS】根据文本内容动态测算文本控件宽高问题背景:一般情况下,在鸿蒙里文本控件Text或者Span的宽高,我们都会设置固定宽高,或者根据内容自适应,不设置固定宽高。但是在特殊场景下,例如,父组件的宽高需要根据子组件的内容动态设置宽高。或者是文本控件根据内容会有行数变化。都需......
  • Azure语音转文本服务:智能识别,中英文无缝转换
    作用:说话的人说的是英文,那么转换成的文本就是英文的,同理,说话的人说的是中文,那么转换成的文本也就是英文的。完整可跑通的代码很简单:importazure.cognitiveservices.speechasspeechsdkdefrecognize_from_microphone(filename):#Thisexamplerequiresenvironmentvar......
  • 使用Llama Index与Streamlit实现一个从文本中提取专业术语和定义网页小程序
    LlamaIndex有很多文档完备的用例(语义搜索、摘要等)。然而,这并不意味着我们不能将LlamaIndex应用到非常具体的用例中!在本教程中,我们将介绍使用LlamaIndex从文本中提取术语和定义的设计过程,同时允许用户稍后查询这些术语。使用Streamlit,我们可以提供一种简单的方法来构建用......
  • LongBench: 一个双语多任务的长文本理解基准测试
    LongBench:开创性的长文本理解评估基准在人工智能和自然语言处理领域,大语言模型(LLMs)的出现无疑是一场革命。这些模型在各种语言任务中展现出惊人的能力,但它们也面临着一个共同的挑战-长文本理解。大多数LLMs只能处理几千个token的输入,这严重限制了它们在处理长篇文档、报......
  • Meta 最新 SPIRIT-LM:语音文本无缝转换还能懂情绪;字节回应实习生破坏大模型训练:网传损
        开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表......
  • 解除网页文本禁止复制限制的六种方法
    #方法一:浏览器扩展最简单也是最省事的方法,直接安装解除复制限制的扩展完事儿。下面推荐两款扩展:SimpleAllowCopy:Chrome&Edge(Chromium系的应该都可以)AbsoluteEnableRightClick&Copy:Chrome&Edge&Firefox使用方法也很简单,在有复制限制或者右键限制的网站上,点......
  • 使用 Tkinter 构建一个文本分割工具
    使用Tkinter构建一个文本分割工具在日常的编程工作中,我们有时会遇到需要将大段文本按照一定规则分割成小段的情况。手动完成这项任务既耗时又容易出错,因此编写一个小工具来自动处理这种需求是非常有用的。本博文将介绍如何使用Python的Tkinter库构建一个图形界面应用程......
  • 前端学习Day8 CSS常用声明 (文本 、图像篇)
    目录一、文本1.1.1、字体样式的常用属性1.1.2、语法格式1.2.1、文本样式1.2.2、语法格式 二、图像2.1.1、图像控制的常用属性2.1.2、语法格式一、文本1.1.1、字体样式的常用属性属性说明font-family设置字体的类型font-weight设置字体的粗细font-size设置字体的......
  • [包教包会]C语言:详解分支语句(if , switch , goto)和循环语句(while , for , do while
    概览控制语句用于控制程序的执行流程,以实现程序的各种结构方式C语言支持三种结构:顺序结构、选择结构(分支)、循环结构:(其实显示中的事件也都是由这三者混合合成的)它们由特定的语句定义符组成,C语言有九种控制语句。可分成以下三类:1.条件判断语句也叫分支语句:if语句......