如何使用 .NET 创建自动 PII 或 Keyword 编辑管道
如何使用 .NET 创建自动 PII 或 Keyword 编辑管道
在扫描图像中编辑个人识别信息(PII)和敏感关键字对隐私、法律和遵守操作至关重要。
现实世界问题
扫描档案中的机密数据的手动编写是缓慢、错误的、昂贵的。 自动化是必要的,以确保可靠和一致的隐藏符合性和隐私审查。
解决方案概述
使用 OCR 自动检测 PII 或关键字,然后在图像中面具、模具或取代它们,并保存编辑的结果 - 确保隐私和安全。
原則
- Visual Studio 2019 或以后
- .NET 6.0 或更高版本(或 .Net Framework 4.6.2+)
- Aspose.OCR 为 .NET 从 NuGet
- PII 或在文本文件中的关键字列表
PM> Install-Package Aspose.OCR
步骤实施
步骤1:准备PII/关键字列表和输入图像
List<string> piiList = new List<string>(File.ReadAllLines("pii_keywords.txt"));
string[] files = Directory.GetFiles("./input", "*.png");
步骤2:寻找PII/关键词
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
AsposeOcr ocr = new AsposeOcr();
foreach (string file in files)
{
foreach (string pii in piiList)
{
bool found = ocr.ImageHasText(file, pii, settings);
if (found)
{
// Proceed to redact in Step 3
}
}
}
步骤3:编辑或面具检测的条款
- 在 Aspose.OCR 检测术语时,编辑必须与图像图书馆(例如,System.Drawing,SkiaSharp)一起应用。
// Example using System.Drawing to overlay black box (simplified)
using (var image = new Bitmap(file))
{
using (var g = Graphics.FromImage(image))
{
// Locate/estimate bounding box for found term (requires mapping OCR region, see docs/API)
// g.FillRectangle(Brushes.Black, x, y, width, height);
}
image.Save($"./redacted/redacted_{Path.GetFileName(file)}");
}
步骤4:记录编辑文件
File.AppendAllText("redaction_log.csv", $"{file},{pii},redacted\n");
步骤5:完成Batch工作流示例
using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;
using System.Drawing;
class Program
{
static void Main(string[] args)
{
List<string> piiList = new List<string>(File.ReadAllLines("pii_keywords.txt"));
string[] files = Directory.GetFiles("./input", "*.png");
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
AsposeOcr ocr = new AsposeOcr();
foreach (string file in files)
{
foreach (string pii in piiList)
{
bool found = ocr.ImageHasText(file, pii, settings);
if (found)
{
// Redact by overlay (simplified; see docs for bounding box)
using (var image = new Bitmap(file))
using (var g = Graphics.FromImage(image))
{
// Example: Draw rectangle where text is found (requires OCR region info)
// g.FillRectangle(Brushes.Black, x, y, width, height);
// Save redacted copy
image.Save($"./redacted/redacted_{Path.GetFileName(file)}");
}
File.AppendAllText("redaction_log.csv", $"{file},{pii},redacted\n");
}
}
}
}
}
注意: 要准确地绘制区域,请使用 Aspose.OCR 的区域识别 API 获取检测的文本区块的坐标,然后精确面具。
使用案例和应用程序
法律和遵守
自动编写合同、人力资源文件和监管文件。
隐私审计
确保不会在扫描的档案、登机或证据文件中泄漏PII。
数据损失预防(Data Loss Prevention)
停止在扫描图像中随机共享或存储敏感信息。
共同挑战与解决方案
挑战1:找到准确的文本区域
** 解决方案:** 使用 OCR 文本区域输出和地图为图像坐标隐藏。
挑战2:错误的积极和消极
** 解决方案:** 列出关键字列表,验证编辑的图像,并进行审计。
挑战3:Batch Job Size
** 解决方案:** 平行和自动错误处理为规模。
绩效考虑
- 区域计算和图像写作可能很慢,如果需要的话,使用Async。
- 登录所有编辑 遵守评论
最佳实践
- 测试区域地图准确性与多样图像
- 定期更新新 PII 模式的关键字列表
- 保存原始和编辑文件
- 用手动点检查验证
先进的场景
剧本1:蓝色而不是黑色
使用图像过滤器将被检测到的区域为更微妙的面具。
剧本2:自定义编辑/替代文本
将自定义标签(例如“REDACTED”)转换为黑盒子。
结论
Aspose.OCR Image Text Finder for .NET 允许您在规模上自动编写 PII / 关键字 - 减少法律风险,并确保图像档案的隐私。
具体区域API和编辑集成,请参见 ASPOSE.OCR 为 .NET API 参考 .