feat: add mastery feature to recitation wheel
This commit is contained in:
@@ -60,8 +60,10 @@ class OCRCalorieRecognitionModule(BaseModule):
|
||||
def __init__(self, config: BaseConfig):
|
||||
super().__init__(config, ModuleType.DATA_COLLECTION)
|
||||
|
||||
# OCR配置
|
||||
self.ocr_methods = ['tesseract', 'paddleocr', 'easyocr']
|
||||
# OCR配置 - 优先使用轻量级OCR引擎,避免内存占用过大
|
||||
# 默认只使用tesseract(轻量级),其他OCR引擎需要手动安装且作为可选依赖
|
||||
self.ocr_methods = ['tesseract'] # 轻量级默认配置
|
||||
# 可选添加其他OCR引擎:'paddleocr', 'easyocr' (需要安装对应依赖)
|
||||
self.min_confidence = 0.6
|
||||
self.max_processing_time = 30.0
|
||||
|
||||
@@ -278,9 +280,11 @@ class OCRCalorieRecognitionModule(BaseModule):
|
||||
return None
|
||||
|
||||
def _paddleocr_recognize(self, image: np.ndarray) -> Optional[OCRResult]:
|
||||
"""使用PaddleOCR进行识别"""
|
||||
"""使用PaddleOCR进行识别(可选依赖,需要PaddlePaddle,占用内存较大)"""
|
||||
try:
|
||||
# 这里需要安装paddleocr: pip install paddleocr
|
||||
# 注意:PaddleOCR需要安装paddleocr和PaddlePaddle,占用内存较大
|
||||
# 如需使用,请手动安装: pip install paddleocr
|
||||
# 然后需要在OCR方法列表中添加'paddleocr'
|
||||
from paddleocr import PaddleOCR
|
||||
|
||||
if 'paddleocr' not in self.ocr_engines:
|
||||
@@ -327,9 +331,11 @@ class OCRCalorieRecognitionModule(BaseModule):
|
||||
return None
|
||||
|
||||
def _easyocr_recognize(self, image: np.ndarray) -> Optional[OCRResult]:
|
||||
"""使用EasyOCR进行识别"""
|
||||
"""使用EasyOCR进行识别(可选依赖,需要PyTorch,占用内存很大)"""
|
||||
try:
|
||||
# 这里需要安装easyocr: pip install easyocr
|
||||
# 注意:EasyOCR需要安装easyocr和PyTorch,占用内存很大(通常需要1-2GB)
|
||||
# 如需使用,请手动安装: pip install easyocr
|
||||
# 然后需要在OCR方法列表中添加'easyocr'
|
||||
import easyocr
|
||||
|
||||
if 'easyocr' not in self.ocr_engines:
|
||||
|
||||
Reference in New Issue
Block a user