C#WinForm使用PaddleOCRSharp识别图片文字
|
admin
2025年2月16日 10:1
本文热度 423
|
PaddleOCRSharp是一个基于百度飞桨(PaddlePaddle)封装的.NET版本OCR工具类库,旨在为.NET开发者提供高效且简便的方式来集成OCR功能。PaddleOCRSharp是PaddleOCR的.NET封装库,使得.NET开发者能够方便地在其项目中调用PaddleOCR提供的文本识别功能。
private PaddleOCREngine engine;
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "*.*|*.bmp;*.jpg;*.jpeg;*.tiff;*.tiff;*.png";
if (ofd.ShowDialog() != DialogResult.OK) return;
this.pictureBox1.Image = Image.FromFile(ofd.FileName);
}
private void button2_Click(object sender, EventArgs e)
{
Bitmap imagebyte = new Bitmap(pictureBox1.Image);
OCRModelConfig config = null;
//OCR参数
OCRParameter oCRParameter = new OCRParameter();
oCRParameter.cpu_math_library_num_threads = 10;//预测并发线程数
oCRParameter.enable_mkldnn = true;//web部署该值建议设置为0,否则出错,内存如果使用很大,建议该值也设置为0.
oCRParameter.cls = false; //是否执行文字方向分类;默认false
oCRParameter.det = true;//是否开启方向检测,用于检测识别180旋转
oCRParameter.use_angle_cls = false;//是否开启方向检测,用于检测识别180旋转
oCRParameter.det_db_score_mode = true;//是否使用多段线,即文字区域是用多段线还是用矩形,
oCRParameter.max_side_len = 1500;
oCRParameter.rec_img_h = 48;
oCRParameter.rec_img_w = 320;
oCRParameter.det_db_thresh = 0.3f;
oCRParameter.det_db_box_thresh = 0.618f;
//初始化OCR引擎
engine = new PaddleOCREngine(config, oCRParameter);
//模型配置,使用默认值
StructureModelConfig structureModelConfig = null;
//表格识别参数配置,使用默认值
StructureParameter structureParameter = new StructureParameter();
PaddleStructureEngine structengine = new PaddleStructureEngine(structureModelConfig, structureParameter);
OCRResult ocrResult = engine.DetectText(imagebyte);
richTextBox1.AppendText(ocrResult.Text);
}
阅读原文:原文链接
该文章在 2025/2/17 12:27:31 编辑过