Remove locks

This commit is contained in:
2026-04-24 17:10:29 +10:00
parent 7a11c9617b
commit 3a527d2dad
51 changed files with 38 additions and 1251 deletions

View File

@@ -9,15 +9,6 @@ namespace ANSCENTER {
{
bool result = ANSOCRBase::Initialize(licenseKey, modelConfig, modelZipFilePath, modelZipPassword, engineMode);
if (!result) return false;
// Serialize derived init against concurrent extract re-entries on the
// same folder. See ModelFolderLockGuard in Utility.h.
ANSCENTER::ModelFolderLockGuard _flg(_modelFolder, "ANSOCR::Initialize");
if (!_flg.acquired()) {
this->_logger.LogError("ANSOCR::Initialize",
"Timed out waiting for model-folder lock: " + _modelFolder,
__FILE__, __LINE__);
return false;
}
auto option = fastdeploy::RuntimeOption();
// Add default values to modelConfig if required.
_modelConfig.precisionType = "fp32";
@@ -117,8 +108,6 @@ namespace ANSCENTER {
}
}
std::vector<ANSCENTER::OCRObject> ANSOCR::RunInference(const cv::Mat& input) {
std::vector<ANSCENTER::OCRObject> OCRObjects;
if (input.empty()) return OCRObjects;
@@ -184,7 +173,6 @@ namespace ANSCENTER {
}
}
std::vector<ANSCENTER::OCRObject> ANSOCR::RunInference(const cv::Mat& input, const std::vector<cv::Rect>& Bbox) {
// No coarse _mutex — ppOCR->Predict() / engine has its own internal lock
std::vector<ANSCENTER::OCRObject> OCRObjects;
@@ -278,7 +266,6 @@ namespace ANSCENTER {
}
}
std::vector<ANSCENTER::OCRObject> ANSOCR::RunInference(const cv::Mat& input, const std::vector<cv::Rect>& Bbox, const std::string& cameraId) {
// No coarse _mutex — ppOCR->Predict() / engine has its own internal lock
std::vector<ANSCENTER::OCRObject> OCRObjects;
@@ -348,7 +335,6 @@ namespace ANSCENTER {
ocrObject.box.width = rook_points[1].x - rook_points[0].x;
ocrObject.box.height = rook_points[2].y - rook_points[1].y;
ocrObject.classId = res_ocr.cls_labels[n];
ocrObject.confidence = res_ocr.rec_scores[n];
ocrObject.className = res_ocr.text[n];