'commit'
This commit is contained in:
@@ -534,14 +534,14 @@ class ReadImageKit:
|
||||
@staticmethod
|
||||
async def get_stations_hybrid(image_path, uploader, cdn_domain):
|
||||
"""
|
||||
混合识别模式:图形学切片 + 大模型小图 OCR
|
||||
混合识别模式:图形学切片 + 大模型小图 VL 识别
|
||||
"""
|
||||
# 1. 图形学切片
|
||||
segments = ReadImageKit.get_card_segments(image_path)
|
||||
if not segments:
|
||||
return []
|
||||
|
||||
# 2. 对每个切片并行进行 OCR
|
||||
# 2. 对每个切片并行进行 VL 识别
|
||||
tasks = []
|
||||
for seg in segments:
|
||||
# 上传切片
|
||||
@@ -552,9 +552,9 @@ class ReadImageKit:
|
||||
|
||||
# 记录上传后的 URL 供识别使用
|
||||
seg["patch_url"] = patch_url
|
||||
tasks.append(ReadImageKit.recognize_card_text(patch_url))
|
||||
tasks.append(ReadImageKit.recognize_card_with_vl(patch_url))
|
||||
|
||||
# 等待所有 OCR 完成
|
||||
# 等待所有 VL 完成
|
||||
results = await asyncio.gather(*tasks)
|
||||
|
||||
# 3. 组装结果
|
||||
@@ -773,9 +773,9 @@ class ReadImageKit:
|
||||
return []
|
||||
|
||||
@staticmethod
|
||||
async def recognize_card_text(patch_url):
|
||||
async def recognize_card_with_vl(patch_url):
|
||||
"""
|
||||
对切片进行小图 OCR 识别,提取场站详细信息
|
||||
对切片进行小图 VL 识别,提取场站详细信息
|
||||
"""
|
||||
resp = await ReadImageKit._client.chat.completions.create(
|
||||
model=VL_MODEL_NAME,
|
||||
@@ -802,7 +802,7 @@ class ReadImageKit:
|
||||
if json_match:
|
||||
return json.loads(json_match.group())
|
||||
except Exception:
|
||||
logger.warning(f"OCR 结果解析 JSON 失败: {content}")
|
||||
logger.warning(f"VL 结果解析 JSON 失败: {content}")
|
||||
|
||||
return {"station_name": "未知"}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user