当前位置:   article > 正文

PaddleOCRSharp的使用与Aspose.ocr 和Tesseract对比_paddleocrengine

paddleocrengine

在同类里面尝试了Aspose.ocr 和Tesseract,效果都没有PaddleOCR好。

感觉是PaddleOCR》Aspose.ocr Tesseract

首先下载

 PaddleOCRSharp

然后调用,

cpu推理。

  1. using PaddleOCRSharp;
  2. using System.Text;
  3. using System.Windows.Forms;
  4. namespace WinFormsApp14
  5. {
  6. public partial class Form1 : Form
  7. {
  8. public Form1()
  9. {
  10. InitializeComponent();
  11. engine = CreateOCRParameter();// 这个只能引用一次,否则会出现内存一直增加的问题
  12. }
  13. public PaddleOCREngine engine;
  14. public PaddleOCREngine CreateOCRParameter()
  15. {
  16. OCRParameter oCRParameter = new OCRParameter();
  17. //oCRParameter.cpu_math_library_num_threads = 6;//预测并发线程数
  18. // oCRParameter.enable_mkldnn = true;//web部署该值建议设置为0,否则出错,内存如果使用很大,建议该值也设置为0.
  19. // oCRParameter.cls = false; //是否执行文字方向分类;默认false
  20. // oCRParameter.det = true;//是否开启方向检测,用于检测识别180旋转
  21. // oCRParameter.use_angle_cls = true;//是否开启方向检测,用于检测识别180旋转
  22. // oCRParameter.det_db_score_mode = true;//是否使用多段线,即文字区域是用多段线还是用矩形,
  23. //oCRParameter.det_db_unclip_ratio = 1.6f;
  24. // oCRParameter.max_side_len = 960;
  25. OCRModelConfig config = null;
  26. /*
  27. OCRModelConfig config = new OCRModelConfig();
  28. string root = Environment.CurrentDirectory;
  29. string modelPathroot = root + @"\inference";
  30. config.det_infer = modelPathroot + @"\ch_PP-OCRv3_det_infer";
  31. config.cls_infer = modelPathroot + @"\ch_ppocr_mobile_v2.0_cls_infer";
  32. config.rec_infer = modelPathroot + @"\ch_PP-OCRv3_rec_infer";
  33. config.keys = modelPathroot + @"\ppocr_keys.txt";
  34. */
  35. PaddleOCREngine engine = new PaddleOCREngine(config, oCRParameter);
  36. return engine;
  37. }
  38. private void button1_Click(object sender, EventArgs e)
  39. {
  40. OpenFileDialog openFileDialog1 = new OpenFileDialog();
  41. richTextBox1.Text = "";
  42. openFileDialog1.FileName = "";
  43. openFileDialog1.Filter = "所有文件(*.*)|*.*";
  44. if (openFileDialog1.ShowDialog() == DialogResult.OK)
  45. {
  46. OCRResult ocrResult = engine.DetectText(openFileDialog1.FileName);
  47. StringBuilder sb1 = new StringBuilder();
  48. foreach (var i in ocrResult.TextBlocks)
  49. {
  50. sb1.Append(i.Text + "\r\n");
  51. }
  52. richTextBox1.AppendText(sb1.ToString());
  53. }
  54. }
  55. }
  56. }

基本都能识别,就是{}识别不怎么好。

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/946209
推荐阅读
相关标签
  

闽ICP备14008679号