线条厂各设备控制代码V1.0
This commit is contained in:
50
visual_algorithm/visual_algorithm.py
Normal file
50
visual_algorithm/visual_algorithm.py
Normal file
@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
# @Time : 2025/12/23 16:44
|
||||
# @Author : reenrr
|
||||
# @File : visual_algorithm.py
|
||||
# @Desc : 留给视觉--质量检测的接口
|
||||
"""
|
||||
import random
|
||||
|
||||
|
||||
# -------------------------- 核心算法接口(后续替换此处即可) --------------------------
|
||||
def visual_algorithm_core(line_data: dict) -> str:
|
||||
"""
|
||||
视觉算法核心判定函数(模拟版本)
|
||||
后续接入真实视觉算法时,直接替换此函数的实现逻辑即可
|
||||
|
||||
param: line_data: 线条特征数据(字典格式,可根据实际需求扩展字段)
|
||||
示例:{"line_id": "L001", "straightness": 0.95, "noise_ratio": 0.08}
|
||||
return: 判定结果,固定返回 "qualified" 或 "unqualified"
|
||||
"""
|
||||
# 模拟随机返回合格/不合格(真实算法时,替换为实际判定逻辑)
|
||||
# return random.choice(["qualified", "unqualified"])
|
||||
return "qualified"
|
||||
|
||||
|
||||
# --------------外部接口---------------
|
||||
def flaw_detection(line_data: dict) -> str:
|
||||
"""
|
||||
视觉算法缺陷检测统一接口(对外调用入口)
|
||||
封装核心算法,保证接口格式统一,后续替换算法不影响调用方
|
||||
|
||||
:param line_data: 线条特征数据(需和核心算法入参一致)
|
||||
:return: 检测结果,"qualified"(合格) / "unqualified"(不合格)
|
||||
"""
|
||||
# 调用核心算法(后续仅需修改 visual_algorithm_core 函数)
|
||||
result = visual_algorithm_core(line_data)
|
||||
# 结果校验(保证返回值符合规范)
|
||||
if result not in ["qualified", "unqualified"]:
|
||||
raise ValueError("视觉算法返回值异常,仅支持 'qualified' 或 'unqualified'")
|
||||
return result
|
||||
|
||||
# ------------测试接口---------------
|
||||
if __name__ == '__main__':
|
||||
result = flaw_detection({"line_id": "L001", "straightness": 0.95, "noise_ratio": 0.08})
|
||||
print("线条质量检测")
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user