当前位置: 首页 > news >正文

qwen-vl 实现OCR的测试

    文本识别,也称为光学字符识别 (OCR),可以将印刷文本或手写文本转换为易于编辑、搜索和分析的数字格式。它涉及分析文本图像并识别其中包含的字符和单词。

        深度学习彻底改变了文本识别,显著提升了准确性和性能。目前已有多种基于深度学习的文本识别方法。

 使用深度学习进行文本识别

  • 卷积神经网络 (CNN):CNN 通常用于基于图像的文本识别。输入图像由卷积层驱动,提取特征并学习文本表征。然后,CNN 的输出被传递到循环神经网络 (RNN) 进行进一步处理和文本识别。

  • 循环神经网络 (RNN):RNN 广泛应用于基于序列的文本识别,例如手写和语音识别。RNN 使用反馈循环来处理序列数据,从而能够捕捉长期依赖关系和上下文信息。

  • 编码器-解码器网络:编码器-解码器网络用于端到端文本识别。输入图像首先被编码为特征向量,然后解码为字符或单词序列。这些网络可以进行端到端训练,从而提高效率和准确性。

        记得十年前学习google 的tensorflow 神经网络技术的第一个项目就是手写数字的识别。伴随着大模型(LLM) 特别是多模态大模型的出现,基于AI大模型 的OCR 变现出显著的优势。而且使用十分简单。最近我就尝试了基于阿里的qwen-vl 大模型实现OCR 。

输入:

这是一个page 的文档,通过截屏出来的图片。

 代码

import os
from openai import OpenAI
import base64
def encode_image(image_path):
    with open(image_path, "rb") as image_file:
        return base64.b64encode(image_file.read()).decode("utf-8")
 
input_image_path = r"./text.png"
base64_image = encode_image(input_image_path)
client = OpenAI(
    api_key="sk-27c202869xxxxxxa4a9300767e0d",
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)

completion = client.chat.completions.create(
    model="qwen-vl-ocr-latest",
    messages=[
        {
            "role": "system",
            "content": [{"type": "text", "text": "You are a helpful assistant."}],
        },
        {
            "role": "user",
            "content": [
                {
                    "type": "image_url",
                    "image_url": {
                        "url": f"data:image/jpeg;base64,{base64_image}"
                    },
                },
                {"type": "text", "text": "请识别出图片文字"},
            ],
        },
    ],
)

print(completion.choices[0].message.content)

结果

播客电台项目报告
项目简介
项目的目标
本项目标是实现像收听电台一样收听自己喜爱的播客节目。节目单是根据听众的喜好,利用
AI技术的推荐算法自动生成。实现听众完全脱离屏幕操作,可以在多种设备收听播客节目。
本项目的另一个目标是将国外优质的播客节目翻译成中文播客,使国内听众能够收听到国外
生活,教育类的播客节目。倾听世界的声音。
项目的背景
国内播客的现状
国内的播客平台主要包括喜马拉雅和小宇宙。本人收听了一段时间的播客节目,总的感觉有一些高
质量的播客节目,比如我喜欢的播客包括:硅谷101,商业就是这样的。但是高质量的节目比较少,
主要表现在:
• 音频书比较多,访谈类节目比较少。从我个人的体验而言,我更喜欢访谈类节目,感觉有一个人
在讲述。更加亲切。

我尝试使用了两个大模型

  • qwen-vl-max-latest
  • qwen-vl-ocr-latest

 初步测试,感觉两个模型的OCR 识别能力都很棒。

我也尝试过OllamaOCR ,它是基于Llama 3.2-Vision 11B 实现的,感觉对中文的识别效果不行。

结束语

  很感慨,技术进步有时候真的很无情,一些企业做了许多年的OCR , 被大模型超越了,真是被时代淘汰,连招呼都不打。

  无论是语音转码(TTS/STT),还是OCR ,中文还是要依靠国内的力量来开发。也是国内团队具有优势的场景之一。

  

相关文章:

  • 《AI大模型应知应会100篇》第10篇:大模型的涌现能力:为什么规模如此重要
  • Python数据分析-NumPy模块-查看数组属性
  • STM32 模块化开发实战指南:系列介绍
  • 贪心算法-跳跃游戏
  • Windows环境下 全屏显示某个字符串
  • css易混淆的知识点
  • 开发遇到的问题-编译报错
  • 分布式锁和事务注解结合使用
  • 第Y1周:调用YOLOv5官方权重进行检测
  • Python函数的说明文档的访问方式
  • 人工智能的经济盲点及AI拓展
  • 火山RTC 4 音视频引擎 IRTCVideo,及 音视频引擎事件回调接口 IRTCVideoEventHandler
  • 数据结构基础(2)
  • ubuntu 服务器版本常见问题
  • Node.js多版本共存管理工具NVM(最新版本)详细使用教程(附安装包教程)
  • 重返JAVA之路-初识JAVA
  • 【android bluetooth 协议分析 01】【HCI 层介绍 1】【hci_packets.pdl 介绍】
  • 第十二天 - Flask/Django基础 - REST API开发 - 练习:运维管理后台API
  • Linux环境变量详解
  • 无人机在极端环境材料的选择
  • 江山做网站/百度网站官网入口网址
  • 安全等级保护每个网站必须做吗/百度应用app
  • 做海报可以在哪些网站下载素材/阿里巴巴logo
  • 创新的企业网站开发/seo tdk
  • 贵阳市花溪区建设局网站/阜新网络推广
  • 做监控的有哪些网站/如何制作一个自己的网站