mirror of
https://github.com/RapidAI/RapidOCR.git
synced 2026-11-10 21:10:55 +08:00
fix(rapidocr_api): Fixed returned formatting errors (#200)
* rapidocr api rapidocr_onnxruntime 版本 1.3.23 api返回格式需要格式化
This commit is contained in:
2 files changed
+19
-4
No files matched your search
+2
-2
@@ -5,10 +5,10 @@
|
||||
import requests
|
||||
|
||||
url = 'http://localhost:9003/ocr'
|
||||
img_path = '../python/tests/test_files/ch_en_num.jpg'
|
||||
img_path = '/tmp/page1_image1.jpg'
|
||||
|
||||
with open(img_path, 'rb') as f:
|
||||
file_dict = {'image_file': (img_path, f, 'image/png')}
|
||||
response = requests.post(url, files=file_dict, timeout=60)
|
||||
|
||||
print(response.text)
|
||||
print(response.text)
|
||||
+17
-2
@@ -23,8 +23,8 @@ class OCRAPIUtils:
|
||||
|
||||
def __call__(self, img: Image.Image) -> Dict:
|
||||
img = np.array(img)
|
||||
|
||||
ocr_res, _ = self.ocr(img)
|
||||
|
||||
if not ocr_res:
|
||||
return {}
|
||||
|
||||
@@ -32,8 +32,23 @@ class OCRAPIUtils:
|
||||
str(i): {"rec_txt": rec, "dt_boxes": dt_box, "score": score}
|
||||
for i, (dt_box, rec, score) in enumerate(ocr_res)
|
||||
}
|
||||
return out_dict
|
||||
|
||||
return self.convert_to_json(out_dict)
|
||||
|
||||
def convert_to_json(self, data):
|
||||
"""Recursively convert NumPy types to Python types."""
|
||||
if isinstance(data, np.ndarray):
|
||||
return data.tolist()
|
||||
elif isinstance(data, np.generic):
|
||||
return data.item()
|
||||
elif isinstance(data, (list, tuple)):
|
||||
return [self.convert_to_json(item) for item in data]
|
||||
elif isinstance(data, dict):
|
||||
return {k: self.convert_to_json(v) for k, v in data.items()}
|
||||
elif isinstance(data, np.bool_):
|
||||
return bool(data)
|
||||
else:
|
||||
return data
|
||||
|
||||
app = FastAPI()
|
||||
processor = OCRAPIUtils()
|
||||
|
||||
Reference in new issue
Block a user