coc仓库--ocr相关

发布时间 2023-07-19 04:26:32作者: (⊃・ᴥ・)つ
void ocr_myjinbi(tesseract::TessBaseAPI *chi_api, cv::Mat *mat_srcp, int *myjinbi)
{
  cv::Mat mat2(*mat_srcp, cv::Rect(1577, 37, 290, 60));
  mat2black(&mat2);
  Pix *image = mat8ToPix(&mat2);
  chi_api->SetImage(image);
  char *outText = chi_api->GetUTF8Text();
  cv::imwrite("../4444.jpeg", mat2);
  *myjinbi = analyzeOcrChars(outText);
  mat2.release();
  delete[] outText;
  pixDestroy(&image);
}

int analyzeOcrChars(char *outText)
{
  size_t i = 0;
  size_t tmpindex = 0;
  char tmp[15];
  for (; i < 15; i++)
  {
    if (outText[i] == '\0')
    {
      tmp[tmpindex] = outText[i];
      if (i == 0)
        return -1;
      // std::cout << "i == " << i << std::endl;
      break;
    }
    else if (outText[i] == '\n')
    {
      // std::cout << "i \\n== " << i << std::endl;
    }
    else if (outText[i] == ' ')
    {
      // std::cout << "i        == " << i << std::endl;
    }
    else
    {
      tmp[tmpindex] = outText[i];
      tmpindex++;
    }
  }
  return atoi(tmp);
}





  int myjinbi = 0;
  ocr_myjinbi(chi_api, &mat, &myjinbi);