基于大模型的汉字部件标注系统设计计算机毕业设计(源码+lw+部署文档+讲解等)
2026/9/15 0:24:10 网站建设 项目流程

博主介绍:✌ 专注于VUE,小程序,安卓,Java,python,物联网专业,有18年开发经验,长年从事毕业指导,项目实战✌选取一个适合的毕业设计题目很重要。✌关注✌私信我✌具体的问题,我会尽力帮助你。

一、研究目的

本研究旨在构建一种基于大模型的汉字部件标注系统,以解决传统汉字分解与标注方法在准确性、效率与可扩展性方面的局限。当前,汉字作为世界文字体系中结构最为复杂的一类,其内部部件的识别与归类对自然语言处理、计算机视觉以及文化遗产数字化等领域均具有重要意义。然而,现有方法多依赖人工标注或规则驱动,导致标注成本高昂且难以覆盖所有异体字与新造字。大模型在文本生成、语义理解与图像识别方面已展现出强大的跨模态学习能力,因而具备潜力在汉字部件识别任务中实现自动化、精确化的标注。为此,本研究将探索将视觉Transformer与多模态预训练模型相结合的技术路线,以实现对汉字图像及其对应文字信息的双向映射,并通过自监督学习进一步提升模型对稀有部件的识别能力。研究过程中,将构建包含数万条汉字样本及其部件标签的大规模标注语料库,利用分层注意力机制对字符结构进行细粒度分解,并通过多任务学习同时优化字符识别与部件定位的损失函数。系统设计将兼顾实时性与可解释性,提供基于Web的交互界面,使研究者能够快速检索、验证并扩充标注结果,从而促进汉字学术研究与工业应用的深度融合。最终,本研究期望通过实验评估证明所提出的大模型标注框架在准确率、召回率与处理速度方面均优于现有基线方法,为汉字数字化与多模态语言理解提供可复制、可推广的技术方案。

二、研究意义

本研究所提出的基于大模型的汉字部件标注系统,具有深远的学术与应用意义。首先,在汉字学术研究层面,该系统能够实现对数十万汉字样本进行高精度、自动化的部件分解与归类,为文字形态学、语源学以及古文字研究提供了可靠的数据支撑。传统人工标注方法耗时长且易受主观偏差影响,而本系统通过视觉Transformer与多模态预训练模型的协同学习,能够在保持高准确率的同时显著降低人工成本。其次,在自然语言处理与计算机视觉领域,汉字部件信息是实现字符识别、手写文字识别以及跨语言文本生成的重要特征。通过将部件级别的语义嵌入到预训练模型中,可提升字符级别的语义表达能力,从而在多语言机器翻译、文本生成与信息检索等任务中取得更佳表现。再次,在数字文化遗产保护与数字化转型方面,汉字部件标注系统能够为古籍扫描、碑刻识别以及汉字字体设计提供精细化的图像处理工具。系统所构建的大规模标注语料库将成为后续研究的公共资源,推动学术界对汉字结构规律的进一步探索。最后,从技术创新角度看,本研究融合了视觉Transformer、分层注意力机制与多任务学习等前沿技术,形成了一套可迁移到其他文字体系(如日文假名、韩文字母)的通用框架,为跨文化文本处理提供了新的思路。综上所述,该系统不仅在学术研究中具备重要价值,也在工业应用与文化遗产保护等方面展现出广阔的前景。

三、国内外研究现状

国内外学术界对汉字部件标注的研究历经从规则驱动到深度学习再到大模型演进的过程,形成了多条互补的研究方向。早期国内研究主要集中在基于形体学规则与手工标注的方法上,利用字形学家对部件结构进行系统归类,并构建了如《汉字部件字典》之类的参考工具;然而此类方法受限于规则的覆盖范围与人工标注成本高昂。随着计算机视觉技术的发展,国内研究者开始尝试将卷积神经网络应用于汉字图像分割与识别,典型工作如基于FCN和U‑Net的字符部件分割网络,能够在一定程度上自动提取部件边界,但在处理形体相似度高、笔画复杂的异体字时仍存在误判。近年来,国内学者进一步引入注意力机制与多任务学习框架,将字符识别与部件定位联合训练,显著提升了稀有部件的识别率,并通过自监督预训练在无标注数据上实现了知识迁移。

国外研究方面,除了对汉字本身的关注外,学术界普遍将汉字视为更广泛的表意文字体系的一部分,并开展跨语言的字符识别与表示学习。欧美研究者在OCR领域已将Transformer与视觉Transformer(ViT)相结合,构建了端到端的字符识别模型;在自然语言处理领域,BERT、RoBERTa等预训练模型被广泛用于中文文本生成与理解,而近年出现的多模态大模型如CLIP、ALIGN等则能够同时处理图像与文字信息,为汉字部件标注提供了新的技术路径。与此同时,学者们提出了“部件嵌入”(radical embedding)概念,将汉字内部部件作为子词级别的语义单元嵌入到语言模型中,已在词义消歧、文本分类等任务中展现出提升效果。

在研究方向上,当前学术界主要聚焦于三大核心议题:一是基于大模型的跨模态预训练框架,利用视觉Transformer与自监督学习实现对汉字图像与文字语义的联合建模;二是稀有部件与异体字的无监督分割与标注技术,通过聚类、图像生成网络等方法降低人工标注成本;三是可解释性与可扩展性研究,致力于将部件级别的注意力可视化,并构建适用于不同书体、字体与手写体的通用标注体系。

在成果方面,国内外已相继发布了多套大规模汉字图像与部件标注数据集,如CASIA-HWDB、THU-CTW等,为后续模型训练提供了丰富资源;基于Transformer的汉字识别模型在ICDAR等国际会议上取得了显著的准确率提升,部分模型已公开开源,促进了学术与工业界的技术共享;在数字文化遗产保护领域,研究者利用部件标注系统对古籍扫描图像进行细粒度分割与复原,为文献数字化提供了技术支撑。综上所述,国内外在汉字部件标注的研究现状呈现出从规则到深度学习再到大模型的演进趋势,并在数据集构建、模型创新与应用推广等方面取得了显著进展,为本研究奠定了坚实的理论与技术基础。

四、预期达到目标及解决的关键问题

本研究的总体目标在于构建一种高效、精准且可扩展的基于大模型的汉字部件标注系统,能够实现对海量汉字图像与文本信息进行自动化分解与标注,并为后续自然语言处理、计算机视觉及文化遗产数字化等应用提供可靠的数据支撑。具体而言,预期通过多模态预训练框架实现字符图像与文字语义的双向映射,使得模型在识别常见部件的同时,能够捕捉稀有或异体字中的细微结构差异,从而大幅提升标注准确率与召回率。与此同时,系统将兼顾实时性与可解释性,提供基于Web的交互界面,使研究者能够快速检索、验证并迭代标注结果,以满足学术与工业界对高质量汉字数据的需求。

为实现上述总体目标,本研究将分阶段推进关键技术路线。第一阶段聚焦于构建大规模汉字图像与部件标签语料库,采用自动化采集与半监督标注方法,确保数据覆盖多种字体、书写风格与异体字形态。第二阶段将设计并训练视觉Transformer与分层注意力机制相结合的跨模态模型,通过多任务学习同时优化字符识别与部件定位损失,提升模型对复杂笔画结构的解析能力。第三阶段将对模型进行可解释性分析,利用可视化技术揭示注意力分布与部件识别之间的关系,并通过持续学习机制实现对新出现字形的自适应更新。最终目标是形成一套开源、可复用的汉字部件标注框架,为学术界提供统一的数据标准与工具支持。

在技术实现过程中,研究面临若干关键问题。首先,数据不平衡与稀有部件缺失导致模型在低频样本上的泛化能力不足,需要探索自监督预训练与数据增强策略以弥补标注缺口。其次,汉字部件的层次结构与笔画顺序的多样性使得单一注意力机制难以捕捉所有细节,亟需设计多尺度、跨层次的分层注意力模块,以提升对复杂结构的识别精度。再次,模型在不同字体与书写风格之间的迁移性能不佳,需要构建跨字体适配机制或采用域自适应技术以增强鲁棒性。最后,系统的可解释性与用户交互体验仍需进一步完善,通过可视化工具展示部件定位结果并支持人工纠错,以提升系统在实际应用中的可接受度。

五、研究内容

本研究以构建一种基于大模型的汉字部件标注系统为核心目标,整体研究内容可划分为数据准备、模型设计与训练、系统实现与评估以及应用推广四个主要阶段。首先,在数据准备阶段,计划通过爬取公开汉字数据库、数字化古籍扫描文件以及手写文本样本,形成包含数十万条汉字图像及其对应文字信息的多模态语料库;随后采用半监督标注技术与聚类算法,对稀有部件进行自动预标注,并通过专家校对完成高质量的部件标签集;该阶段还将针对不同字体、书写风格与异体字形态设计数据增强策略,以提升模型对多样化输入的鲁棒性。其次,在模型设计与训练阶段,将构建一个跨模态视觉Transformer框架,该框架通过自注意力机制实现图像特征与文字语义的双向映射;为进一步捕捉部件级别细节,设计分层注意力模块,使得模型能够在不同尺度上聚焦笔画与部件结构;同时引入多任务学习策略,将字符识别、部件定位与部件分类任务统一训练,以提升整体性能。训练过程中将采用自监督预训练方法,如图像-文本对齐任务,来充分利用无标签数据;在微调阶段引入稀有部件的平衡采样与加权损失,解决类别不平衡问题。第三,在系统实现与评估阶段,将基于训练好的模型搭建Web端交互平台,支持批量上传汉字图像、实时标注结果展示以及人工纠错功能;为验证系统性能,将设计多维度评估指标,包括标注准确率、召回率、F1值以及推理速度,并与现有规则驱动与卷积网络方法进行对比实验;此外,计划开展用户体验调查,评估系统在学术研究与工业应用中的可用性。最后,在应用推广阶段,将系统开放源代码与API接口,鼓励学术界共享标注数据并在多语言文本生成、手写识别以及数字文化遗产保护等场景中进行二次开发;同时,结合行业需求开展案例研究,验证系统在实际业务中的价值,并根据反馈持续迭代改进模型与功能。通过上述四个阶段的系统化推进,本研究将实现从数据获取到模型部署再到应用落地的闭环,为汉字部件标注提供一种高效、精准且可扩展的技术方案。

六、需求分析

用户需求方面,首先学术研究人员需要一种能够自动、精准地对汉字图像进行部件分解与标注的工具,以支持文字形态学、语源学及古文字研究等领域的深度分析;其次数字文化遗产保护工作者希望系统能够快速处理大量古籍扫描文件,提取其中稀有异体字的部件信息,从而为后续数字化与修复提供可靠的数据支持;再次自然语言处理与计算机视觉工程师需要一种可嵌入现有OCR或文本生成流水线的模块,以提升字符识别精度并实现字符级别的语义增强;此外字体设计师与排版工程师期望通过可视化的部件标注结果,快速评估不同字体对部件结构的影响,从而指导字体改进与创新。综上所述,用户群体对系统的核心诉求在于高准确率、低人工干预、易集成以及支持多种字体与书写风格的适配。

功能需求方面,系统应具备完整的数据采集与预处理模块,能够接受图像文件或扫描文档并自动提取字符区域;随后通过跨模态视觉Transformer实现字符识别与部件定位的双向推理,并在推理过程中提供分层注意力可视化,以便用户直观了解模型决策依据;系统需支持批量处理与实时推理两种模式,满足科研实验与工业部署的不同场景;在交互层面,应提供基于Web的标注界面,支持鼠标或手写笔输入对部件位置进行微调,并允许人工纠错后同步更新模型权重;输出方面,系统需支持多种标准格式(JSON、XML、CSV)以便与数据库或文本处理工具无缝对接;此外,为满足开发者需求,系统应提供RESTful API接口,允许外部程序调用推理功能并获取标注结果;最后,系统应具备模型管理与持续学习功能,支持上传新样本、重新训练或微调模型,并通过版本控制记录模型演进历史。

七、可行性分析

经济可行性方面,项目所需的核心投入主要集中在数据采集与标注、模型训练与部署以及后期维护与服务。首先,现有公开汉字数据库与古籍扫描资源可免费获取,但对高质量部件标注仍需人工审核,预计每千字成本约为人民币五百元至一千元;其次,深度学习模型的训练需要GPU集群或云计算实例,按现行市场价计,训练一次大模型的算力费用约为人民币数万元;再次,系统上线后需要持续的服务器租赁、数据存储与安全防护,年运营成本预计在人民币十万至二十万元之间。综合来看,若项目能够通过学术基金、政府文化遗产保护专项或企业赞助获得初始资金支持,并在三至五年内实现对高校与文化机构的商业化服务,可望实现成本回收并产生正向经济效益。

社会可行性方面,汉字部件标注系统直接服务于学术研究、文化遗产数字化与工业应用,具有显著的社会价值。首先,学术界将获得高质量、可复现的数据资源,促进文字形态学与语源学等基础研究的深入;其次,文化遗产保护工作者能够快速识别并复原稀有异体字,为数字化修复与传承提供技术支持;再次,工业界如OCR厂商、字体设计公司可将系统集成至产品线,提升字符识别准确率与用户体验。与此同时,系统的开放性与可解释性有助于降低技术壁垒,鼓励更多研究者与开发者参与共建共享;但也需关注数据隐私与版权问题,确保采集的扫描文件遵循相关法规,并对使用条款进行明确约定。综上所述,该项目在社会层面具备广泛的接受度与正面影响。

技术可行性方面,项目依托当前成熟的视觉Transformer与多模态预训练技术,已在图像识别与文本生成领域取得突破性进展。首先,视觉Transformer能够有效捕捉汉字图像中的细粒度结构信息,并通过自注意力机制实现跨尺度特征融合;其次,多模态预训练框架如CLIP或ALIGN可将字符图像与对应文字语义对齐,为部件级别的语义嵌入奠定基础;再次,分层注意力模块与多任务学习策略能够同时优化字符识别与部件定位,提升整体性能。技术挑战主要集中在稀有部件的标注缺失、字体多样性导致的域迁移问题以及模型推理速度与资源占用的平衡。通过引入自监督预训练、数据增强与领域自适应技术,可有效缓解上述难点;同时,利用边缘计算或模型压缩技术可降低部署成本,实现低延迟推理。鉴于现有硬件与算法成熟度,项目在技术层面具备实现的可行性。

八、功能分析

系统功能模块设计围绕用户需求与功能需求展开,逻辑层次分为数据处理层、模型推理层、交互服务层、管理与运营层四大部分。数据处理层负责原始汉字图像与文本信息的采集、预处理与存储;模型推理层实现跨模态视觉Transformer的前向计算,完成字符识别与部件定位;交互服务层提供Web端标注界面、API接口以及结果可视化工具;管理与运营层涵盖模型训练、版本管理、评估分析以及安全合规保障。

数据处理层包含以下模块:①数据采集子模块,支持从公开数据库、扫描文档或手写样本中批量导入图像文件,并自动识别文本区域;②图像预处理子模块,对输入图像进行尺寸归一化、灰度化、噪声抑制与二值化处理,以提升后续模型的鲁棒性;③文本对齐子模块,利用光学字符识别技术将图像中的文字与对应的Unicode编码进行匹配,为多模态训练提供正样本;④数据存储子模块,将预处理后的图像、文本及其元数据统一存入关系型数据库或分布式文件系统,支持高并发读写与版本追踪;⑤数据增强子模块,通过旋转、缩放、仿真笔画噪声等方式扩充稀有部件样本,缓解类别不平衡问题。

模型推理层由核心推理引擎与辅助组件构成:①视觉Transformer主干,采用分层自注意力机制对图像特征进行多尺度编码;②多模态融合模块,将视觉特征与文本语义向量进行交叉互补,实现字符-部件的双向映射;③分层注意力子模块,针对不同笔画层次生成细粒度关注权重,用于后续部件定位与可解释性展示;④多任务输出头,分别输出字符类别、部件边界框坐标与部件类别标签;⑤后处理子模块,对模型输出进行非极大值抑制、边界框校正与置信度阈值过滤,生成最终标注结果。

交互服务层提供多渠道访问与可视化支持:①Web前端界面,采用响应式设计,支持批量上传图像、实时推理展示、手动修正部件位置及类别,并记录编辑历史;②可视化子模块,将分层注意力热图与部件边界框叠加在原始图像上,帮助用户直观理解模型决策;③RESTful API服务,提供推理接口、结果查询、批量任务提交与状态监控,方便第三方系统集成;④结果导出子模块,支持JSON、XML、CSV等多种格式导出,以便与数据库或文本处理工具对接;⑤用户权限管理子模块,实现基于角色的访问控制与审计日志记录。

管理与运营层聚焦模型生命周期与系统运营:①模型训练管理,支持数据集划分、超参数配置、分布式训练任务调度,并自动记录实验日志;②版本控制子模块,使用Git或DVC等工具跟踪模型权重、配置文件与推理结果的变更;③持续学习与微调子模块,监测在线推理误差,自动收集误标样本并触发增量训练;④评估与分析子模块,提供准确率、召回率、F1值等指标的可视化仪表盘,并支持A/B测试;⑤安全合规子模块,实施数据脱敏、访问加密与合规审计,确保符合相关隐私法规与版权约束;⑥资源监控子模块,实时跟踪GPU利用率、内存占用与网络延迟,自动触发扩容或降级策略。

通过上述功能模块的协同工作,系统能够实现从原始汉字图像的自动采集、精准部件标注到结果可视化与后续应用的全流程闭环,为学术研究、文化遗产保护与工业生产提供可靠、高效且易于扩展的技术支持。

九、数据库设计

表名:users
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id|用户唯一标识符|10|INT UNSIGNED AUTO_INCREMENT|主键||
username|登录用户名|50|VARCHAR(50)| |唯一索引,区分大小写,安全存储密码哈希值。
email|电子邮件地址|100|VARCHAR(100)| |唯一索引,用于密码重置与通知。
password_hash|加密后的密码哈希值|255|VARCHAR(255)||
role|用户角色(如admin、researcher、viewer)|20|VARCHAR(20)||
created_at|创建时间戳|19|DATETIME||
updated_at|更新时间戳|19|DATETIME||

表名:fonts
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 字体唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
name | 字体名称 |100 |VARCHAR(100) ||
family | 字体系列(如宋体、黑体) |50 |VARCHAR(50) ||
style | 字体风格(如粗体、斜体)|20|VARCHAR(20)||
created_at|创建时间戳|19|DATETIME||
updated_at|更新时间戳|19|DATETIME||

表名:images
字段名(英文)|说明(中文)|大小 |类型 |主外键 |备注
id | 图像唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
user_id | 上传者用户ID |10 |INT UNSIGNED ||外键,引用users.id,表示上传人。
font_id|所使用字体ID|10|INT UNSIGNED||外键,引用fonts.id。
file_path|存储路径或URL|255|VARCHAR(255)||
resolution | 分辨率(宽x高) |20 |VARCHAR(20)||
created_at | 上传时间戳 |19 |DATETIME||
updated_at | 更新时间戳 |19 |DATETIME||

表名:texts
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 文本唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
image_id | 关联图像ID |10 |INT UNSIGNED ||外键,引用images.id。
content | 文本内容(Unicode编码)|5000|TEXT||
language | 语言代码(如zh-CN)|5|VARCHAR(5)||
created_at | 创建时间戳 |19 |DATETIME||
updated_at | 更新时间戳 |19 |DATETIME||

表名:annotations
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 标注唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
image_id | 关联图像ID |10 |INT UNSIGNED ||外键,引用images.id。
text_id | 关联文本ID |10 |INT UNSIGNED ||外键,引用texts.id。
component_id|部件唯一标识符(可在本表或组件表中)|10|INT UNSIGNED||
x | 部件左上角X坐标 |10 |INT||
y | 部件左上角Y坐标 |10 |INT||
width | 部件宽度 |10 |INT||
height|部件高度|10|INT||
label|部件类别(如“水”“木”)|50|VARCHAR(50)||
confidence|模型置信度(0-1)|5 |DECIMAL(4,3)||
created_at | 创建时间戳 |19 |DATETIME||
updated_at | 更新时间戳 |19 |DATETIME||

表名:models
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 模型唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
name | 模型名称(如“CharComponentTransformer”)|100 |VARCHAR(100)||
description | 模型描述 |255 |VARCHAR(255)||
framework | 框架(如PyTorch、TensorFlow)|20|VARCHAR(20)||
created_at | 创建时间戳 |19 |DATETIME||
updated_at | 更新时间戳 |19 |DATETIME||

表名:model_versions
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 版本唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
model_id | 所属模型ID |10 |INT UNSIGNED ||外键,引用models.id。
version_number | 版本号(如v1.0)|20|VARCHAR(20)||
commit_hash | Git提交哈希值 |40|VARCHAR(40)||
training_data_size | 训练数据量(条数)|10|INT||
accuracy | 验证准确率(0-1)|5 |DECIMAL(4,3)||
created_at | 创建时间戳 |19 |DATETIME||
updated_at | 更新时间戳 |19 |DATETIME||

表名:tasks
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 任务唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
user_id | 创建者用户ID |10 |INT UNSIGNED ||外键,引用users.id。
model_version_id | 使用的模型版本ID |10 |INT UNSIGNED ||外键,引用model_versions.id。
image_ids|待处理图像ID列表(JSON数组)|500|TEXT||
status | 任务状态(queued, running, completed, failed)|20|VARCHAR(20)||
progress | 进度百分比(0-100)|3 |INT||
created_at | 创建时间戳 |19 |DATETIME||
updated_at | 更新时间戳 |19 |DATETIME||

表名:evaluation_metrics
字段名(英文)|说明(中文)|大小|类型|主外键|备注
id | 评估记录唯一标识符 |10 |INT UNSIGNED AUTO_INCREMENT |主键||
task_id | 关联任务ID |10 |INT UNSIGNED ||外键,引用tasks.id。
precision | 精确率(0-1)|5 |DECIMAL(4,3)||
recall | 召回率(0-1)|5 |DECIMAL(4,3)||
f1_score | F1值(0-1)|5 |DECIMAL(4,3)||
confusion_matrix | 混淆矩阵(JSON字符串)|1000|TEXT||
created_at | 创建时间戳 |19 |DATETIME||

上述表结构遵循第一范式至第三范式原则,避免冗余与更新异常。主键均为自增整数,外键通过明确引用实现数据完整性。字段类型与长度根据实际存储需求设定,保证存储效率与查询性能。

十、建表语句

下面给出完整的 MySQL 建表语句,采用 InnoDB 存储引擎,所有字段均按前述表结构定义,并包含主键、外键、唯一索引以及必要的普通索引。请根据实际数据库编码(建议使用 utf8mb4_general_ci)执行。

-- 1. 用户表
CREATE TABLE users (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
password_hash VARCHAR(255) NOT NULL,
role VARCHAR(20) DEFAULT 'viewer',
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY uk_users_username (username),
UNIQUE KEY uk_users_email (email)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 2. 字体表
CREATE TABLE fonts (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
family VARCHAR(50),
style VARCHAR(20),
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 3. 图像表
CREATE TABLE images (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user_id INT UNSIGNED NOT NULL,
font_id INT UNSIGNED,
file_path VARCHAR(255) NOT NULL,
resolution VARCHAR(20),
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX idx_images_user_id (user_id),
INDEX idx_images_font_id (font_id),
CONSTRAINT fk_images_user_id
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
CONSTRAINT fk_images_font_id
FOREIGN KEY (font_id) REFERENCES fonts(id) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 4. 文本表
CREATE TABLE texts (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
image_id INT UNSIGNED NOT NULL,
content TEXT NOT NULL,
language VARCHAR(5) DEFAULT 'zh-CN',
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX idx_texts_image_id (image_id),
CONSTRAINT fk_texts_image_id
FOREIGN KEY (image_id) REFERENCES images(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 5. 标注表
CREATE TABLE annotations (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
image_id INT UNSIGNED NOT NULL,
text_id INT UNSIGNED NOT NULL,
component_id INT UNSIGNED,
x INT NOT NULL,
y INT NOT NULL,
width INT NOT NULL,
height INT NOT NULL,
label VARCHAR(50) NOT NULL,
confidence DECIMAL(4,3) DEFAULT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX idx_annotations_image_id (image_id),
INDEX idx_annotations_text_id (text_id),
CONSTRAINT fk_annotations_image_id
FOREIGN KEY (image_id) REFERENCES images(id) ON DELETE CASCADE,
CONSTRAINT fk_annotations_text_id
FOREIGN KEY (text_id) REFERENCES texts(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 6. 模型表
CREATE TABLE models (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
description VARCHAR(255),
framework VARCHAR(20),
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 7. 模型版本表
CREATE TABLE model_versions (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
model_id INT UNSIGNED NOT NULL,
version_number VARCHAR(20) NOT NULL,
commit_hash VARCHAR(40),
training_data_size INT DEFAULT NULL,
accuracy DECIMAL(4,3) DEFAULT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX idx_model_versions_model_id (model_id),
CONSTRAINT fk_model_versions_model_id
FOREIGN KEY (model_id) REFERENCES models(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 8. 任务表
CREATE TABLE tasks (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user_id INT UNSIGNED NOT NULL,
model_version_id INT UNSIGNED NOT NULL,
image_ids TEXT NOT NULL, -- JSON 数组
status VARCHAR(20) DEFAULT 'queued',
progress INT DEFAULT 0,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX idx_tasks_user_id (user_id),
INDEX idx_tasks_model_version_id (model_version_id),
CONSTRAINT fk_tasks_user_id
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
CONSTRAINT fk_tasks_model_version_id
FOREIGN KEY (model_version_id) REFERENCES model_versions(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- 9. 评估指标表
CREATE TABLE evaluation_metrics (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
task_id INT UNSIGNED NOT NULL,
precision DECIMAL(4,3) DEFAULT NULL,
recall DECIMAL(4,3) DEFAULT NULL,
f1_score DECIMAL(4,3) DEFAULT NULL,
confusion_matrix TEXT, -- JSON 字符串
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
INDEX idx_evaluation_metrics_task_id (task_id),
CONSTRAINT fk_evaluation_metrics_task_id
FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

上述语句已包含所有必要的主键、外键、唯一索引以及常用查询索引,满足第一至第三范式的规范。请根据实际业务需要在执行前确认数据库字符集与排序规则,并根据硬件条件对 InnoDB 参数进行适当调优。

文章下方名片联系我即可~大家点赞、收藏、关注、评论啦 、查看下方👇🏻获取联系方式👇🏻

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询