如何构建属于自己的NDLOCR-Lite?基于Flet的跨平台打包教程
【免费下载链接】ndlocr-liteNDLOCR-Liteアプリケーションのリポジトリソースコードを含むNDLOCR‑Lite application repository (including source code)项目地址https://gitcode.com/gh_mirrors/nd/ndlocr-lite点击查看免费下载NDLOCR-Lite 是一款不需要 GPU 的轻量级 OCR 工具本文是一份完整的 Flet 打包教程带你把它构建为 Windows、macOS、Linux 三端可运行的桌面应用——从克隆仓库到执行flet build命令新手也能 3 步完成。✨ 先认识 NDLOCR-Lite无 GPU 也能跑的 OCR 引擎NDLOCR-Lite 由日本国立国会图书馆开发主打普通家用电脑即可高速执行的文档数字化能力。它的 OCR 流程由 3 个核心模块组合而成模块作用实现布局识别定位文本块、行、表格、图表等区域DEIMv2ViT-Tiny 骨干网络字符串识别把每个文本区域识别为文字PARSeq阅读顺序整序按正确顺序输出段落自研排序模块两个模型均已转换为 ONNX 格式随仓库放在 src/model/ 目录下开箱即用无需 GPU 加速。上图是旧版杂志扫描件红框为布局识别出的文本行OCR 会按阅读顺序输出文字支持 json、xml、TEI、txt、PDF 等多种格式。 打包前准备装好这 3 样东西所有操作系统Windows / macOS / Linux的构建流程完全一致只需先备好以下工具工具版本要求用途Python≥ 3.10运行与打包 GUI 应用Flutter SDK3.27.4Flet 应用构建的基础必装flet0.27.6以官方构建文档为准声明式 GUI 框架提供flet build打包命令依赖清单参考 ndlocr-lite-gui/requirements.txt其中包含了onnxruntime、opencv-python-headless、pypdfium2等 OCR 运行所需库。 第一步克隆源码仓库git clone https://gitcode.com/gh_mirrors/nd/ndlocr-lite cd ndlocr-lite仓库结构与打包相关的部分如下ndlocr-lite-gui/Flet 桌面应用入口打包命令在这里执行src/OCR 核心代码src/ocr.py与 ONNX 模型train/模型再训练与 ONNX 转换的开发文档️ 第二步执行打包命令Windows / Mac / Linux 通用三步核心思路创建虚拟环境 → 安装 flet → 把src复制进 GUI 目录 →flet build。Windows在 ndlocr-lite-gui 同层级目录执行python3 -m venv ocrenv .\ocrenv\Scripts\activate pip install flet0.27.6 xcopy ..\src .\src flet build windowsmacOS / Linux在 ndlocr-lite-gui 同层级目录执行python3 -m venv ocrenv source ./ocrenv/bin/activate pip install flet0.27.6 cp -r ../src . flet build macos # Linux 用户改为flet build linux构建完成后即可得到对应平台的安装包。启动后只需三步使用选择要 OCR 的图像文件、目录或 PDF指定输出目录点击「OCR」按钮等待完成并预览结果 应用截图与文字识别结果预览就发生在上方这个 Flet 界面中——这正是你打包出来的成品。 定制你的应用名称、公司与版本打包产物显示的应用信息在 ndlocr-lite-gui/pyproject.toml 的[tool.flet]段落中配置可按需修改[tool.flet] org jp.go.ndl # 反向域名用于生成应用包 ID product ndlocr-lite-gui # 窗口标题与应用名 company National_Diet_Library copyright Copyright (C) 2025 by National Diet Library其他可定制点版本号定义在 src/version.py发布流程会自动覆盖此文件默认输出格式ndlocr-lite-gui/gui_config.py 中默认开启 json / xml / TEI / txt可改为默认输出 PDF界面多语言ndlocr-lite-gui/uicomponent/ 下包含本地化标签与文本导出组件⚠️ 打包常见问题速查现象原因与解决应用打不开应用放置路径包含日语全角字符请移至纯英文路径Windows 提示Windows 已保护你的电脑点详细信息→运行即可macOS 无法启动需在系统设置中手动允许该应用运行首次启动很慢首次需约 1 分钟加载模型属正常现象OpenCVcv2启动失败Flet 默认会编译打包第三方库项目已在 pyproject.toml 中用[tool.flet.compile] packages false规避照仓库配置构建即可 进阶打造懂你领域的专属 OCR如果你希望 OCR 更擅长古籍、手写体或特定版式可以替换模型布局模型用 DEIMv2 训练文字模型用 PARSeq 训练三种尺寸30 / 50 / 100 字符行再导出 ONNX详细流程见 train/README.md示例代码在 train/deimv2code/ 与 train/parseqcode/命令行执行时通过--det-weights和--rec-weights参数指定你的 ONNX 文件上图是 v1.2 版本对手写横写的识别效果模型针对手写体专门强化过训练。✅ 小结步骤关键命令克隆源码git clone https://gitcode.com/gh_mirrors/nd/ndlocr-lite创建环境python3 -m venv ocrenvpip install flet0.27.6复制核心代码cp -r ../src .Windows 用xcopy跨平台打包flet build windows/flet build macos/flet build linux按照 ndlocr-lite-gui/README.md 的官方构建说明配合本文的问题速查表你就得到了一个属于自己的、可完全定制的 NDLOCR-Lite 桌面 OCR 应用。赞分享【免费下载链接】ndlocr-liteNDLOCR-Liteアプリケーションのリポジトリソースコードを含むNDLOCR‑Lite application repository (including source code)项目地址https://gitcode.com/gh_mirrors/nd/ndlocr-lite点击查看免费下载相关推荐如何基于randomColor构建自己的颜色工具库如何基于randomColor构建自己的颜色工具库 在当今数字化时代色彩设计已成为前端开发和UI/UX设计中不可或缺的重要环节。randomColor作为一款前端JS Tips开源生态如何基于技巧创建自己的npm包JS Tips开源生态如何基于技巧创建自己的npm包 在JavaScript开发中我们经常会遇到重复编写相同功能代码的情况。JS Tips项目 README教程如何基于Emoji-Cheat-Sheet.com构建自己的表情符号库如何基于Emoji Cheat Sheet.com构建自己的表情符号库 想要在GitHub、Basecamp、Slack等平台中快速找到合适的表情符号Emoj前端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

51单片机自平衡小车从原理到实战:倒立摆模型、MPU6050与PID整定

51单片机自平衡小车从原理到实战:倒立摆模型、MPU6050与PID整定

简介:一份基于51单片机的两轮自平衡小车完整设计实例,面向嵌入式初学者与电子爱好者,重点展示如何结合PID控制、蓝牙遥控与姿态采集实现小车直立平衡。压缩包共140个文件,主体为Keil工程文件,含.c/.h源码、STARTUP.A51…

2026/10/13 14:53:13 阅读更多 →
Office 2007 安装 AccessDatabaseEngine_X64 失败的根源与三步破局法

Office 2007 安装 AccessDatabaseEngine_X64 失败的根源与三步破局法

简介:本资源是一份针对Office 2007(32位)与Access Database Engine 2010(64位)在64位Windows 7系统下安装冲突问题的实操解决方案,面向IT运维人员、企业桌面支持工程师及具备基础Windows系统管理能力的中级…

2026/10/13 14:53:13 阅读更多 →
OpenDAL 中 recursive 参数的演进:从 delimiter 到递归列表(RFC 3526)

OpenDAL 中 recursive 参数的演进:从 delimiter 到递归列表(RFC 3526)

数据存储后端 【免费下载链接】opendal Apache OpenDAL: One Layer, All Storage. 项目地址: https://gitcode.com/gh_mirrors/op/opendal 点击查看 免费下载 Apache OpenDAL 的 list API 曾以 delimiter 控制列表行为,这一概念对不熟悉对象存储的用户颇…

2026/10/13 14:53:13 阅读更多 →

最新新闻

从内存加载DLL:PE手动映射与重定位实现原理详解

从内存加载DLL:PE手动映射与重定位实现原理详解

简介:从内存加载DLL的完整实现与调用示例,面向需要在运行时绕过磁盘落盘、以资源方式直接加载动态库的Windows开发者。示例工程包含一个测试用DLL项目与一个实际加载测试项目,演示了如何将DLL作为资源编译进程序,并通过MemoryLoad…

2026/10/14 17:04:22 阅读更多 →
STM32寄存器白话手册:从芯片手册到寄存器代码的实战指南

STM32寄存器白话手册:从芯片手册到寄存器代码的实战指南

STM32寄存器白话手册:从读懂芯片手册到写出第一份寄存器代码,我踩过的坑都在这了做嵌入式这些年,越来越发现一个现象:很多朋友学 STM32 都是从标准外设库或者 HAL 库入门的,点灯、串口、中断一套一套往下写&#xff0c…

2026/10/14 17:04:22 阅读更多 →
Qwen-Image-2.1-viggle-turbo在3060上跑通GGUF模型全指南

Qwen-Image-2.1-viggle-turbo在3060上跑通GGUF模型全指南

1. 这不是“跑个模型”那么简单:Qwen-Image-2.1-viggle-turbo在ComfyUI上真能用3060跑出1080P图?我第一次看到这个标题时,下意识点开三个不同平台的实测视频——结果两个卡在“no lm runtime found for model format gguf!”报错里反复重装&a…

2026/10/14 17:04:22 阅读更多 →
高校具身智能实验室建设:物理确定性与教学可拆解性

高校具身智能实验室建设:物理确定性与教学可拆解性

1. 具身智能实验室不是“机器人教室”的简单拼凑高校里最近冒出不少“具身智能实验室”的挂牌,有的是把旧机电实验室翻新刷个蓝白墙,摆两台轮式机器人就叫具身;有的直接采购整套商用教育平台,连说明书都没拆完就对外宣传“已建成国…

2026/10/14 17:04:22 阅读更多 →
线性多分类决策边界图解:OvR与OvO的几何本质与Python可视化

线性多分类决策边界图解:OvR与OvO的几何本质与Python可视化

1. 这不是教科书里的公式推导,而是你真正能画出来的多分类决策边界“线性多分类图解python实现”——看到这个标题,我第一反应不是打开Jupyter写from sklearn.linear_model import LogisticRegression,而是抓起一张草稿纸,在上面画…

2026/10/14 17:04:22 阅读更多 →
无人自助拼豆系统架构设计与核心功能开发落地实战完整指南

无人自助拼豆系统架构设计与核心功能开发落地实战完整指南

无人自助拼豆系统架构设计与核心功能开发落地实战完整指南 随着无人自助业态的快速发展,拼豆DIY作为年轻群体喜爱的轻量手工娱乐项目,与无人智能柜结合的模式逐步进入商圈、高校、社区等场景。本文从架构设计、技术选型、核心功能开发、部署运维四个维度…

2026/10/14 17:03:20 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →