离线OCR实战:易语言接入PaddleOCR,老Windows也能跑通

先交代个背景。去年接了某单位一个小需求,资料室的老师傅每天要把一摞纸质单据的编号手工录进电脑,系统是一台Win7老机器,整个办公室在纯内网,别说调在线OCR,连拷贝文件都要走审批流程。他们现有的内部软件是用易语言写的,跑了几年了,需求很简单:在软件里加一个“识别单据”的按钮,图片丢进去,自动把文字识别出来回填到表格。我当时查了一圈,最后锁定了飞桨PaddleOCR——标题里写的“飞浆”就是它。折腾一周之后,我做出来一个完全本地、离线可用的识别模块,图片、截图、易语言字节集三种输入全支持,Win7和Win10都实测跑通了。这篇文章会把选型理由、调用路线、兼容性坑和实测数据都摊开讲,给想在老Windows环境里做离线OCR的开发者留一份能直接参考的作业。

1. 离线OCR这件事,是被一台Win7老机器逼出来的

1.1 需求是怎么来的

具体的需求其实比听起来更朴素。资料室的流程是每天收到新单据之后,人工把单据编号、金额、日期抄到Excel里再导入内部系统,一天几十张,遇到月底甚至上百张,抄错一个数字就要返工。老师傅想要的工具非常“原始”:能用扫描仪或者手机拍好的图片丢进软件,自动把关键区域文字识别出来,再填到现有软件的数据窗口里。

听着像个小功能,但限制条件一列出来就很麻烦。电脑不能联网,这是单位安全制度定的硬规矩;系统是Win7,而且是32位的老机器;现有软件是易语言编译的32位程序,新模块必须能塞进去。换句话说,市面上那些“注册账号就能调用的云OCR”在这里全都行不通,必须找一个能整体打包到本地、不依赖外网、还能和易语言顺畅对接的方案。

1.2 在线方案为什么直接被否掉

很多人第一反应是:OCR而已,打开任何一个云服务商的接口,传图拿结果就完事了。但在这个场景里,在线方案从头到尾都是死路。

首先是数据出不了内网。单据上往往带着编号、金额、联系方式这类敏感信息,明文规定图片不能上传到任何外部服务,这是红线,碰不得。其次是网络环境本身就不允许,那台电脑连外网网口都没有,更别说还有防火墙策略。就算强行把图片导到别的机器上传,也违反流程,老师傅不会同意的。

就算抛开安全和网络问题,在线识别的体验也不行。网络接口高峰期排队,单张识别经常要等好几秒,如果还要在网络抖动时重试,批量处理一百张单据能让人等到崩溃。再加上按调用次数计费的成本,这种“每次识别都要过一遍外网”的方案,在批量处理场景里怎么看都不划算。

1.3 本地识别真正解决的三个问题

本地化方案的价值是实打实的,我自己总结下来解决了三个问题。

第一,数据不出机器。模型文件提前放到电脑里,识别全程在本地CPU上跑,没有任何一个字节离开这台机器,安全制度这一关直接过了。第二,速度可控,不用看网络脸色。识别一张图要多久只取决于CPU性能,我自己实测下来,老双核机器也就一秒左右,跟在线接口抢时间的情况完全不存在。第三,可以深度集成到现有易语言程序里。用户不需要打开另一个软件,不用学新操作,在原来的录入界面上多点一下按钮就行,这对一线使用者来说才是真正的“零成本上手”。

后来的项目里我遇到不少类似场景,只要有“敏感数据、老系统、批量处理”这三个词同时出现,本地OCR基本上就是唯一解。

2. 选飞桨PaddleOCR做主引擎的几个理由

2.1 易语言做OCR,常见的几套方案

决定走本地OCR之后,我开始盘算易语言圈子里到底有哪些能用的技术路线。先说结论:大部分方案都走不通或者不好用。

Office组件里的MODI(Office Document Imaging)是老古董了,新的Office安装包基本砍掉了这个组件,而且它识别中文的能力很一般,遇到稍微复杂点的排版就乱。

Tesseract是开源免费的经典方案,支持命令行调用,也能通过DLL接进来,但默认的中文识别普适性不够。我用它测过截图和扫描件,白底黑字印刷体还能看,一旦图像带点噪点、倾斜或者表格线,识别结果就开始离谱,要出可用效果得自己训练数据微调,这对易语言开发者来说门槛太高了。

云端OCR的识别率确实高,但前面说过数据出网就完蛋,不在考虑范围。

最后剩下的是飞桨PaddleOCR。它开源、支持纯本地CPU推理、中文识别效果经过大量真实语料训练,而且官方一直在维护Windows下的推理能力,对易语言这种“非典型调用方”来说,是最容易集成的一条路。

2.2 PaddleOCR的最小离线部署结构

很多人一听到PaddleOCR就想到Python,觉得必须装一堆依赖才能跑。其实真正部署起来,它只有三块东西:推理框架本体、模型文件、运行库。

推理框架本体负责把模型加载进内存并完成计算,Windows下可以用官方预编译的推理库。模型文件是纯数据,一共有三个:检测模型det、方向分类模型cls、识别模型rec。检测模型负责在图片里找出哪些区域有文字,方向分类模型判断文字方向是不是倒的,识别模型负责把文字行图像转成字符串,这三个模型串起来就是一次完整的OCR流程。运行库包括系统级的C++运行库,以及框架依赖的动态库。

这三块全部放在本地,不联网也可以正常工作。整个最小部署包我最后压到不到200MB,对一个离线部署需求来说完全能接受。

2.3 模型选型:mobile版和server版的取舍

飞桨官方对同一套识别任务提供了mobile和server两套模型。mobile模型体积小、CPU推理快,识别率略低;server模型精度更高,但内存占用和识别耗时都明显上一个台阶。

我的选择是默认用mobile模型,因为那台Win7老机器CPU不强,老师傅没有耐心等两三秒。如果后续遇到图片质量特别差、识别率不够的情况,可以再把server模型文件替换进去。模型文件是热插拔的,改个配置路径就行,代码不用动。

给个直观对比,同样一张截图,我用一台普通办公电脑测过:mobile模型单张300到600毫秒,server模型1.5秒起步。对大多数内部工具来说,mobile的速度体验明显更好,代价只是几个百分点的精度差距。如果你的场景是扫描存档级的精度要求,再考虑server模型不迟。

3. 易语言接入PaddleOCR的三条路线:命令行、本地服务、DLL封装

3.1 路线一:命令行调用,先证明识别链路能通

一开始我偷了个懒,直接用Python脚本做识别,易语言这边用运行()函数执行命令行,等脚本把结果写成文本文件,易语言再读回来。这个方案十分钟就能跑通,作为验证“模型能不能识别、结果格式长什么样”的手段非常快。

但问题很快就暴露了。每次识别都要重新加载Python环境和模型,冷启动时间要2到4秒,老师傅录一张单据按一次按钮,等三四秒出结果,体验非常难受。还有命令行黑窗口会弹一下,在正式软件里显得很不专业。所以命令行方案我只当验证用,没有把它作为交付形态。

3.2 路线二:本地HTTP服务,我最终的选择

真正沿用下来的是本地HTTP服务架构。Python写好一个识别服务,启动时一次性把模型加载进内存,然后监听本机端口。易语言端把图片数据通过HTTP POST发给服务,服务返回JSON格式的识别结果。这个方案的关键优势是模型常驻内存,第一次请求之后,单张识别只需要几百毫秒到一秒,完全不影响操作节奏。

从工程稳定性看,本地服务是独立进程,就算识别服务因为某张畸形图片崩溃了,易语言主程序只会收到一个请求失败的结果,不会被连带带崩。这比DLL直接调用要安全得多。

易语言端代码也极简单,构造请求、发送图片、解析JSON,不需要关心模型加载和推理过程。维护上只需要保证服务随开机启动,或者由主程序在启动时拉起这个服务进程。

3.3 路线三:封装C++ DLL的尝试

如果追求极致性能,可以走C++封装DLL的路线。用Paddle Inference的C++接口编译一个独立DLL,对外暴露三个函数:初始化模型、传入图片字节集做识别、释放结果内存。易语言通过DLL命令直接调用,整个过程是单进程,速度最快,代码也最“优雅”。

但这条路我实际走下来,代价是真的大。C++编译环境配置本身就很折腾,Paddle Inference的依赖项多,静态链接和动态链接都要调;32位和64位一不小心就搞混;VC运行库版本一不对就闪退;对不熟悉C++的易语言开发者来说,光是环境拷贝就能劝退。

3.4 三条路线怎么选

我把三条路线的关键差异整理成了表,方便按自己情况选:

调用路线易语言代码量单张识别延时稳定性维护成本适合谁
命令行调用中3到5秒(含冷启动)一般,有黑窗口低快速验证识别效果
本地HTTP服务少300到1000毫秒高,进程隔离中大部分正式交付场景
C++ DLL少200到600毫秒高,但依赖条件多高对性能有极致要求且熟悉C++

结论很直接:没有特殊理由的话,优先选本地HTTP服务。稳定、好维护、易语言端代码量小,普通用户根本感知不到背后多了一个服务进程。

4. Win7/Win10离线部署的兼容性坑与自检清单

4.1 进程闪退,大多是因为缺运行库

离线单机程序最烦的问题就是“在这台机器上能跑,换一台就闪退”。我排查了一圈,发现八成情况是缺C++运行库。常见报错是找不到VCRUNTIME140.dll或者VCOMP140.dll,这两种文件属于系统级运行库,Win10新系统一般自带,Win7老系统经常没有。

解决办法是打包时把运行库安装包一起带上,或者写一个启动检查逻辑:发现系统缺文件就提示用户先装运行库。另一个容易忽略的点是位数必须一致。易语言编译出来的是32位程序,那调用的DLL、依赖的运行库也要按32位来,不能因为机器是64位系统就想当然用64位运行库。

4.2 老CPU不支持新指令集,启动就崩

这是我印象最深的一个坑。有一台机器系统是Win7,配置看着也不算太老,但程序一启动就崩,日志里没有任何有效信息。后来反复试验才发现,问题出在CPU指令集上。

新版推理框架为了性能默认编译进了AVX指令集,但部分老CPU不支持AVX,一旦执行到相关指令就直接崩溃。解决办法是换成支持旧指令集的版本,或者退回版本号旧一点的推理框架。所以给Win7机器做离线部署,别只看系统版本,还得看CPU是哪一年的。这个坑在Win10上也有,只是概率低一些。

4.3 中文路径、精简系统和杀软误报的隐藏问题

路径里有中文也可能翻车。模型文件放在带中文的目录里,某些版本初始化时读不到模型直接退出,换成纯英文目录就好了。所以发布包里的模型和程序目录,我一律要求放英文路径。

杀毒软件误报也是个老大难。易语言程序本身就被各种安全软件盯得紧,打包出来的Python服务进程和模型文件也可能被误隔离。用户机器上的安全软件如果直接处理掉模型文件,那离线识别就彻底瘫了。实际交付时我建议写清楚用途说明,尽量做代码签名,至少把关键目录加入白名单。

精简版Windows系统则是另一个隐藏雷区,很多精简系统砍掉了系统组件和字体,OCR对字体又很敏感,系统缺字体时识别结果会异常。最后我准备了一个依赖自检小程序,运行一次就能列出缺什么,省得再让用户猜。

4.4 兼容性自检清单

我把这套离线部署要检查的项目整理成了清单,每次发版前都过一遍:

检查项通过标准备注
系统版本Win7 SP1以上、Win10均正常32位系统走32位组件
CPU指令集支持程序所用的指令集老CPU考虑旧版框架
C++运行库缺失时能自动提示安装带上运行库安装包
模型路径纯英文路径避免中文目录
杀毒软件关键目录加入白名单防止模型被隔离
系统字体中文字体完整影响识别结果
位数一致易语言/DLL/运行库全32位或全64位混用必出问题

这套清单在后来几个项目里一直复用,确实帮我挡掉不少现场问题。

5. 图片、截图、字节集三种输入的落地细节

5.1 图片路径输入:中文路径是第一个坑

图片输入最简单的做法是易语言把完整路径传给识别服务,由服务端自己打开文件。这确实省事,但路径里有中文、空格、特殊符号时,服务端很容易因为编码不一致读不到文件。

我后来统一改成:易语言先用读入文件把图片变成字节集,再拼到请求体里发送。这样一来路径编码问题被完全绕开了,服务端拿到的是纯二进制流,不需要关心文件路径。虽然多了一步读文件,但数据量不大,速度上几乎没有差别。

5.2 屏幕截图:快照命令直接进模型

截图识别的输入核心是易语言的快照命令,它可以抓取整个屏幕或者指定窗口,返回字节集。这个字节集不需要落盘,直接加入HTTP请求发送给本地服务就行。

我实际试过在屏幕上框选一个区域再识别,整个流程响应很快。快照命令得到的是位图格式的原始像素数据,服务端用通用解码库处理即可。这个功能很适合做“屏幕上某个区域的文字实时读取”,比如读取旧软件界面里的状态信息、抓取系统弹窗里的提示文字等。

5.3 易语言字节集与图像解码的衔接

字节集的处理是整个易语言端最容易出问题的地方,值得单独说。易语言的字节集本质上就是一整块连续内存,内存里从头开始就是二进制数据。向DLL传参时要用取字节集数据地址拿到整数指针,再把指针和长度传过去;向HTTP服务发送时,直接把字节集作为请求体提交。

另外要注意编码一致的问题。易语言文本默认是GBK编码,而识别服务返回的是UTF-8编码的JSON字符串,如果在易语言里直接显示,中文会乱码。正确的做法是在易语言端做一次编码转换,把UTF-8转成GBK再显示,或者反过来在服务端就统一输出GBK,减少易语言的处理负担。

5.4 统一中间格式的设计

无论哪种输入,我最后都在识别服务端统一成一种中间格式处理:先把收到的图像数据解码为RGB像素矩阵,再交给后续的检测识别流程。这样易语言端只需要负责“把图像变成字节并送进来”这一件事,格式转换全部由服务端处理。

这个设计的核心思路是让识别部分成为一个黑盒:输入是图像数据,输出是文本JSON。以后就算要加新的输入方式,比如从摄像头抓帧、从PDF里抽图,也只需要在易语言端增加对应的转字节逻辑,服务端完全不用动。

6. 识别精度和速度的实测数据与调优开关

6.1 调优核心参数

PaddleOCR开放了不少参数,我在实战里最常用的有四个。det_db_thresh控制文本检测的置信度阈值,值越高越不容易误检,但也可能漏掉模糊文字;det_db_box_thresh控制文本框的过滤强度;rec_thresh控制识别结果的置信度过滤,低于这个值的结果会被丢弃;use_angle_cls决定是否启用方向分类器,识别倒置的图片时必须要开。

具体值要根据图像质量调。干净的截图可以把阈值调高,减少误检;扫描件、实拍照片则要把阈值调低一些,避免漏检。方向分类器建议默认开启,虽然会多花一点时间,但能避免一整张图的方向判断失误。

6.2 三类实际场景识别效果

我拿三类典型场景做了实测,结果供参考。白底黑字的普通截图是最理想的场景,识别率接近百分之百,很少出错。扫描单据稍微麻烦一点,因为纸质有底色、褶皱、印章干扰,检测框偶尔会把印章里的字一起框进去,但核心编号区域基本稳定。身份证拍照这类实拍场景难度最高,反光、倾斜、透视变形都会影响效果,需要配合方向分类器,并且尽量在拍照时保持正对证件。

场景推荐模型需要开关实际表现
屏幕截图mobile方向分类开识别率接近全准
扫描单据mobile方向分类开,阈值略降低编号、日期、金额稳定识别
身份证拍照server方向分类必须开反光和倾斜会明显影响成功率

6.3 性能数据参考

性能上我也记录了一些数字,给个大致参考区间。普通办公电脑(几年前的i5档位)用mobile模型识别一张800x600截图,单张耗时300到600毫秒;换成server模型,1.5到2秒。老一点的Win7双核机,mobile模型单张大约1秒左右,内存占用200到400MB,完全在可接受范围内。

设备类型模型单张耗时内存占用
普通办公电脑mobile300到600毫秒约200MB
普通办公电脑server1.5到2秒约800MB以上
老双核Win7机mobile约1秒约200MB

如果用户反馈“识别慢”,第一步不是换模型,而是看图片是不是传了超大原图。图片分辨率过高时,程序会先做缩放再进模型,这一步经常比识别本身还慢。

7. 用了一年后沉淀下来的经验和扩展方向

7.1 常见问题速查表

这一年里被问得最多的问题,基本集中在下面几种,我直接整理成速查表:

现象原因解决办法
返回中文乱码GBK和UTF-8编码没转换易语言端做编码转换
程序启动闪退缺C++运行库或CPU指令集不支持按自检清单逐项排查
首次识别很慢模型正在冷启动加载服务启动时预加载模型
某张图识别不出文字检测阈值过高或图片质量太差调低阈值,提升图像分辨率
服务进程偶发崩溃极端畸形图片触发异常服务端加异常捕获,自动重启

7.2 还能怎么扩展

这个模块的扩展空间比想象中大。批量扫描文件夹可以结合目录监控,新文件一进来就自动识别;定时识别可以配合易语言的时钟控件,每隔几秒检查一次截图区域;再往上走,还能把识别结果直接对接现有软件的表单填充逻辑,实现半自动录入。

如果让我重新做一遍,我会直接跳过命令行验证这个环节,一开始就搭本地HTTP服务,把省下来的时间花在模型参数调优和兼容性测试上。技术栈本身没有太多花活,真正决定项目成败的往往是那些不起眼的兼容性细节和输入输出规范——这也是我在一台Win7老机器上折腾一周之后最深的体会。

相关新闻

智能体安全实战:从提示注入到权限控制的完整防御设计

智能体安全实战:从提示注入到权限控制的完整防御设计

前阵子有位做企业服务的开发者在交流时提到,他们的客服智能体在测试阶段闹了个“幺蛾子”:只是让它读一封客户反馈邮件,结果它把后台一张订单的状态给改了。没有人给智能体下过修改订单的指令,它怎么就自己动手了?排查…

2026/10/21 3:38:27 阅读更多 →
语言加工的神经计算模型:从认知机制到脑数据对齐实战

语言加工的神经计算模型:从认知机制到脑数据对齐实战

语言加工的神经计算模型,这几个字听起来像是把语言学、脑科学和计算机科学硬塞进了一个锅里。但如果你真的在跟语言打交道——无论是做心理语言学实验、训练语言模型,还是琢磨失语症患者的康复方案——迟早都会撞上这个方向。它的核心问题非常朴素&#…

2026/10/21 3:38:27 阅读更多 →
AI辅助课程论文写作全指南:从选题拆解到初稿打磨

AI辅助课程论文写作全指南:从选题拆解到初稿打磨

我上一次被课程论文逼到凌晨三点,是在写一门专业核心课的期末大作业。当时手头只有一堆零散截图、一个模糊的方向和一个打开了一整天却只写了三百字的文档。不是不想写,是不知道怎么把“我大概想研究某个现象”变成一篇结构完整、论点清楚、引用规范的课…

2026/10/21 3:38:27 阅读更多 →

最新新闻

AI信息挖掘实战:从提问到交叉验证,把碎片信息串成认知

AI信息挖掘实战:从提问到交叉验证,把碎片信息串成认知

元旦的钟声刚敲过,我猜不少人正把“新的一年多学点东西、把手头的事做精”写进计划表。这几天我发现一个很有意思的现象:大家不是不想查资料,而是被资料淹没了。打开浏览器想看某个行业的最新动态,结果十条链接里八条是去年的&…

2026/10/21 5:48:18 阅读更多 →
从SLAM到AMCL:自制差速机器人地图导航模块实战解析

从SLAM到AMCL:自制差速机器人地图导航模块实战解析

lingbot-map 这个名字听起来像某个开源仓库的代号,其实是我给自制的差速移动机器人开发的一套完整地图与导航模块。项目核心就一句话:让一台只会上电转圈的底盘,变成能在办公室和家里自主巡航的机器人。它由三个子功能组成——离线建图、在线…

2026/10/21 5:48:18 阅读更多 →
Python语法基础精讲:变量、缩进与运算符优先级实战避坑指南

Python语法基础精讲:变量、缩进与运算符优先级实战避坑指南

简介:这份PPT课件面向Python零基础学习者与编程入门教学场景,系统梳理第2章Python语法基础的核心知识框架。内容围绕变量与数据类型展开,涵盖整型、浮点型、复数、布尔、字符串、列表、元组、字典、集合等类型,并延伸至标识符命名…

2026/10/21 5:48:18 阅读更多 →
互联网医院管理制度文档编写指南:从制度条款到系统代码的落地实践

互联网医院管理制度文档编写指南:从制度条款到系统代码的落地实践

简介:这份文档面向医院管理者、信息科人员及互联网医疗从业者,系统梳理了互联网医院从组织架构到具体业务规范的完整制度框架,可用于制度建设参考、合规自查或岗位培训。压缩包内为1个doc文件,约176KB,内容以制度条文与…

2026/10/21 5:48:18 阅读更多 →
kubeadm 安装 Kubernetes 集群完整指南:初始化、加入节点与排障

kubeadm 安装 Kubernetes 集群完整指南:初始化、加入节点与排障

经常有人问我:“想自己搭一套 Kubernetes 集群,到底从哪下手?”我一般都会回复一句话:先把 kubeadm 用熟,再谈别的。kubeadm 是 Kubernetes 官方维护的集群引导工具,它的目标就是让你别在节点初始化、证书签…

2026/10/21 5:48:18 阅读更多 →
MediaSoup SDP协商详解:ICE、DTLS与RTP参数三层拆解

MediaSoup SDP协商详解:ICE、DTLS与RTP参数三层拆解

做WebRTC服务端的时间长了,你会发现SDP协商是所有“看起来简单、跑起来折磨”的问题里最典型的一个。文本就那么几行,但每一行都对应着一段连接的生命周期。MediaSoup的SDP协商尤其有意思——它并没有像传统服务器那样去解析和重写SDP文本,而…

2026/10/21 5:47:17 阅读更多 →

日新闻

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

2026/10/21 0:00:11 阅读更多 →
AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

1. 从“封号重开”这个行为说起:用户到底在追求什么“封号重开”这四个字,放在任何产品语境里都带着一股决绝的味道。一个账号从零开始积累使用记录、调教偏好、沉淀工作流,背后是大量的时间和精力成本。正常情况下,没有人愿意主动…

2026/10/21 0:00:11 阅读更多 →
ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

1. 为什么在ROS里硬刚YOLOv3不是“炫技”,而是工程落地的必经之路我第一次在某高校机器人实验室看到那台搭载Jetson TX2的移动底盘原地打转、反复识别错垃圾桶时,就意识到:单纯跑通darknet_ros demo和真正让YOLOv3在ROS里“干活”&#xff0c…

2026/10/21 0:00:11 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/21 4:27:17 阅读更多 →

月新闻

我发现了一个新思路:用 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/20 10:02:08 阅读更多 →
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/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练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/20 9:50:45 阅读更多 →