from datetime import datetime from jinja2 import Environment, FileSystemLoader import os env = Environment(loader=FileSystemLoader('templates')) def generate_report(detection_result, image, features): report_id = f"KD-{datetime.now().strftime('%Y%m%d%H%M%S')}" defect_type = "空洞" if features['分布范围'] == "大" or features['反射次数'] == "多次反射" else "裂缝" description = (f"{defect_type},振幅{features['振幅']},分布范围{features['分布范围']}," f"衰减速度{features['衰减速度']},反射次数{features['反射次数']}") report = { "编号": report_id, "缺陷类型": defect_type, "测线位置": "拱顶", # 假设固定位置 "雷达图谱": image, "缺陷描述": description, "验证情况描述": "待验证", "特征详情": features } return report def render_report(report): template = env.get_template('report.html') return template.render(report=report)