.NET 视频流本地 OCR
在 C# 中识别 RTSP 摄像头流、网络摄像头和视频文件中的文字。OCR 作为 Media Blocks SDK .NET 管道中的一个模块运行——在设备本地,与预览、录制和推流同时进行。
每年 €500 起 · Lifetime 许可证 €1,500 起
视频 OCR 不是循环调用图像 OCR
图像 OCR 库一次只接收一张位图。用它从摄像头或录像中读取文字,你仍需自己解码视频流、挑选并转换帧、调用库,并记录每一帧显示的时间。在 VisioForge SDK 中,OCR 是视频管道中的一个模块:SDK 解码源,OcrBlock 读取经过的帧,同样的帧继续送往屏幕、文件或网络流。
图像 OCR 库与视频管道内 OCR 对比
| 典型的图像 OCR 库 | VisioForge 管道中的 OcrBlock | |
|---|---|---|
| 输入 | 由你的代码传入的位图 | 来自任意 SDK 源(文件、网络摄像头、RTSP 摄像头)的已解码帧 |
| 视频解码 | 由你的代码借助单独的解码器或抓帧工具完成 | 由管道完成 |
| 读取哪些帧 | 由你挑选并转换 | FramesToSkip;OCR 忙碌时到达的帧会被跳过并计数 |
| 文字出现的时间 | 需要你自己记录 | 每个 OnTextDetected 事件都带有时间戳 |
| 同时录制或推流 | 需要另一条视频管道 | 同一条管道:OcrBlock 的输出继续送往编码器、文件或流 |
| 视频中的框和文字 | 由你自己绘制 | DrawResults |
管道内 OCR 带来的好处
OcrBlock 包含在 VisioForge.DotNet.Core.AI 包中。它有一个视频输入和一个视频输出,对收到的帧运行 PP-OCR 模型。
- 解码已由 SDK 完成:SDK 能打开的任何源——视频文件、网络摄像头、RTSP IP 摄像头——都可直接接入 OcrBlock
- 带时间和位置的文字:每个 OnTextDetected 事件包含帧的 Timestamp,以及每一行的 Text、Confidence 和 BoundingBox
- OCR 与录制、推流并行:帧离开 OcrBlock 时保持原样或已绘制文字,并在同一管道中继续送往编码器、文件或网络输出
- 在设备本地运行:PP-OCR 模型基于 ONNX Runtime,可使用 CPU、CUDA、DirectML 或 CoreML 提供程序——无需云 API,没有按次计费,视频不离开本机
- 支持 100 多种语言:将 RecognitionModelPath 和 CharacterDictionaryPath 指向对应语言的 PP-OCR 模型和字典;示例附带拉丁文模型
- 跨平台:一套 C# 代码支持 Windows、macOS、Linux、Android 和 iOS;OCR 示例也提供 .NET MAUI 版本
- 控制实时视频的开销:FramesToSkip = N 时每 N + 1 帧运行一次 OCR;每项设置及其默认值见 OCR 指南
应用场景
可检索的录像
提取课程、网络研讨会和录屏中的文字,附上每一行的时间戳并建立索引。
广播与数字标牌监测
在直播画面或录像中检查字幕条、滚动字幕和数字标牌是否显示了预期文字。
生产线
用固定摄像头读取序列号、批次号和印刷标签,同时录制同一路视频流用于追溯。
零售与仓库中的 IP 摄像头
在现场通过 RTSP 摄像头读取货架标签和产品标签,无需把视频发送到云端 OCR 服务。
代码示例
基于 OCR Text Recognition Demo 编写;录制分支按 Media Blocks 示例的方式连接 H.264 编码器和 MP4 输出。
提取视频文件中的文字及时间戳
C#读取 RTSP 摄像头中的文字并录制为 MP4
C#管道
在 RTSP 示例中,OcrBlock 位于摄像头和编码器之间。识别出的文字通过 OnTextDetected 事件输出;帧继续送往 H.264 编码器和 MP4 文件。
常见问题
视频会离开本机吗?▼
这与图像 OCR 库有什么不同?▼
能否在识别文字的同时录制视频流?▼
我需要哪个 SDK?▼
能否在商业产品中分发 OCR 模型?▼
能否将 OCR 与其他 AI 模块组合使用?▼
文档与示例
OCR 文字识别指南
OcrBlock 与 OcrSettings 参考:模型、语言、每项设置及默认值、故障排除。
OCR Text Recognition Demo (WPF)
Media Blocks SDK .NET 示例:对网络摄像头、视频文件或 RTSP 摄像头进行 OCR,附带 PP-OCRv5 模型。
OCR Text Recognition MB (MAUI)
Media Blocks 的 .NET MAUI OCR 示例:识别设备摄像头中的文字。
VideoCaptureCoreX 与 MediaPlayerCoreX 中的 AI 模块
如何向采集引擎和播放引擎添加处理模块:插入顺序与生命周期。
车牌识别(ANPR)
LicensePlateRecognizerBlock:车牌检测器加车牌专用 OCR 头,识别车辆时比通用 OCR 更快、更准确。
个人信息(PII)遮挡
PIIRedactionBlock:在设备本地对视频中的人脸、车牌和屏幕文字进行模糊或马赛克处理。
开始从视频中读取文字
下载功能完整的 30 天试用版并运行 OCR 示例。根据引擎和输出的不同,可能会出现水印或未注册版本提示。
支持 OCR 的 SDK
Media Blocks SDK .NET
管道 SDK:把 OcrBlock 放在任意源与渲染器、编码器或网络输出之间,与你自己的处理并行。
了解更多 →Video Capture SDK .NET
采集 SDK:将 OcrBlock 添加到 VideoCaptureCoreX,在预览和录制的同时识别摄像头中的文字。
了解更多 →Media Player SDK .NET
播放器 SDK:将 OcrBlock 添加到 MediaPlayerCoreX,读取正在播放的文件和流中的文字。
了解更多 →每年 €500 起 · Lifetime 许可证 €1,500 起
