基于深度学习的青花瓷图像检索系统开发与实现
目录
1.研究背景与目的
1.1课题背景
1.2研究目的
二、调研资料情况
2.1图像分割研究现状
2.2图像检索调研
2.2.1选择深度学习进行检索的原因及优势
2.2.2基于深度学习的图像检索技术的发展
2.2.3基于深度学习的图像检索的研究重点
2.3基于深度学习的图像检索方法调研
三、初步设计方法与实施方案
3.1环境准备
3.2初步设计
3.2.1功能模块设计
3.2.2系统流程设计
3.2.3图像检索流程设计
3.2.4用例设计
3.3实施方案
1.需求分析与规划
2.数据收集与预处理
3.模型训练与优化
4.系统集成与测试
四、参考资料
1.研究背景与目的
1.1课题背景
在数字化时代背景下,计算机科学与技术的发展为文化遗产的保护、研究和传播提供了新的可能性。作为一名计算机科学专业的学生,我深刻认识到技术在文化传承中的重要角色,并对文化遗产保护抱有浓厚的兴趣。文化遗产不仅承载着历史的记忆,也是民族身份和文化多样性的象征。青花瓷作为中国传统文化的瑰宝,因其独特的艺术风格和深厚的文化内涵,成为研究和展示中国文化的重要窗口。[[i]]
在参观博物馆和进行相关学术研究的过程中,我注意到,尽管文物图像资源日益丰富,但现有的文物图像检索工具在效率和准确性上仍存在不足。这些工具往往难以满足非专业用户的需求,特别是在用户体验和检索精准度方面。例如,用户可能需要花费大量时间浏览不相关的结果,或者难以找到具有特定特征的文物图像。这种情况不仅影响了公众的教育和参与度,也限制了学术研究的深度和广度。
随着全球化进程的加快,跨文化交流日益频繁,对于一个能够跨越语言和文化障碍,提供高效、准确文物检索服务的需求也日益增长。一个直观、易用且功能强大的青花瓷图像检索系统,不仅能够促进国内对青花瓷文化的认识和研究,也能够为国际学者和爱好者提供一个了解和研究中国传统文化的平台。
1.2研究目的
- 提升检索效率和准确性:通过深度学习技术提高青花瓷图像检索的速度和准确度,减少人工干预,实现自动化检索。
- 促进数字化进程:推动文物图像的数字化管理,为文物保护和研究提供技术支持,同时为文物数据的长期保存和利用打下基础。
- 降低非专业用户的使用门槛:通过简洁明了的用户界面设计,使得系统易于上手,让非专业用户也能方便地进行文物图像检索。
- 支持文化交流和学术研究:提供一个全球用户都能使用的文物检索工具,促进青花瓷等文化遗产的学术交流和文化传播。
- 实践技术应用与创新:将深度学习等先进技术应用于实际问题中,锻炼技术实践能力,推动技术创新。
二、调研资料情况
2.1图像分割研究现状
- 图像分割的定义与任务:图像分割是计算机视觉中重点处理问题之一,目的是完成对图像的多类别分割任务,主要思想是通过学习图像的颜色、空间、形状等特性,将图像划分为具备不同特性的模块。[[i]]
- 语义分割与实例分割:如图1所示,语义分割重点在于对类别层面像素的理解,而实例分割重点在于对主体归属层的理解。
图 1 语义分割与实例分割效果对比
- 图像分割技术的发展:传统工程应用上常用的方法是使用OpenCV中的GrabCut算法进行图像的背景分割。近年来,随着卷积神经网络研究的深入,更多结合卷积网络的图像语义分割算法相继出现,较为典型的有谷歌提出的DeepLab算法系列。[[ii]]
- DeepLab算法系列的应用:DeepLab系列算法如图2所示,凭借独特的优势广泛应用于各种语义分割场景。例如,通过设计一种基于DeepLabv3+的高级语义分割技术评估血小板激活过程。[[iii]]还有基于DeepLabv3+的胃癌自动分割模型,可以有效提高病理切片图像的分割精度。
图 2 DeepLab算法原理
2.2图像检索调研
2.2.1选择深度学习进行检索的原因及优势
- 自动特征提取与鲁棒性
深度学习能够自动从青花瓷图像中提取高层次语义特征,无需依赖人工设计的特征描述符。这一特性不仅提高了检索的准确性和鲁棒性,还克服了传统方法如SIFT、SURF和HOG对光照、颜色变化等因素敏感的问题。传统图像检索技术依赖手工设计的特征描述符,在面对青花瓷这样具有独特视觉特征的文化遗产时显得力不从心,难以捕捉所有重要的细节,并且对于新出现的样式或图案缺乏灵活性。相比之下,深度学习通过多层次的非线性转换,可以从复杂背景中抽取有意义的信息,提供更全面且稳定的检索结果。Shelhamer, Evan, Long, Jonathan, Darrell, Trevor 的论文《Fully Convolutional Networks for Semantic Segmentation》强调了深度学习在处理复杂非线性特征方面的优越性能[[iv]],进一步证明了其在青花瓷图像检索中的适用性。
- 简化流程与高效处理
深度学习采用端到端的学习方式,直接从原始图像训练至最终检索结果,省去了传统方法中多个独立设计的模块,如特征提取、匹配和索引构建。这种简化不仅减少了人工干预,增强了不同组件间的协调性,还利用GPU加速计算,大幅缩短了处理时间,特别适用于快速发展的文化遗产保护需求。
- 强大的泛化能力与适应性
面对青花瓷图案多样且复杂的情况,深度学习可以通过迁移学习和微调来快速适应新的检索任务或不同的数据集。预训练好的CNN模型可以在少量标注样本的情况下,通过调整最后几层参数适应特定类型的青花瓷图像检索需求,降低了开发成本并加快了部署速度。传统方法难以在没有大量样本的情况下快速适应新样式或图案,而深度学习则能够在少量标注样本的支持下迅速调整到特定类型的青花瓷图像检索任务,体现了更强的适应性和灵活性。
- 提升检索效率与准确性
深度学习技术显著提升了图像检索的速度和精度,尤其是在面对大规模图像库时表现优异。它不仅优化了检索速度,还通过对图像深层次特征的理解,提供了更精确的检索结果。当处理大规模图像库时,传统方法的检索效率会受到严重影响,因为它们需要遍历整个数据库以找到最接近的结果。
2.2.2基于深度学习的图像检索技术的发展
近年来,基于深度学习的图像检索技术飞速发展。如图3所示,自2012年AlexNet的出现为深度学习在图像识别领域的应用奠定了基础,随后Neural code、R-MAC、SPoC等方法相继提出,不断优化深度特征在图像检索中的应用。2017年SCDA和CroW方法通过空间和跨维度加权聚合进一步提升了检索性能。2019年AdCoW方法通过自适应性权重调整增强了特征表示。2020年DELG首次将局部和全局特征融合,而2021年DOLG和R-SAC方法通过端到端的融合策略有效提升了检索效率。至2022年,CWAH、DALG和Transhash等新兴方法的提出,体现了深度特征在图像检索领域的持续创新。[[v]]
图 3 深度特征的实例图像检索发展历程
2.2.3基于深度学习的图像检索的研究重点
在图像检索领域,众多研究聚焦于特征提取和相似度评估这两个核心问题。一些研究提出在深度学习模型中添加全连接层以优化图像检索的效果。同时,也有研究通过基于区域的兴趣点选择和加权求和技术来实现图像的语义检索。在卷积神经网络(CNN)的基础上,一些工作通过减少卷积层数和网络参数来简化模型,并通过融合不同卷积层的特征来提升模型的识别精度。通过采用阈值化技术,开发了一种对连续变化敏感的哈希算法用于图像去噪,这有助于提升特征提取的效率。还有研究提出了结合特征金字塔和注意力机制的晶圆图识别分类方法,这种方法能够更准确地捕捉图像检索中的局部结构。[[vi]]为了提高图像检索的准确性,有研究提出了一种快速的局部特征学习方法,以及一种基于相似度的自适应权重分配策略来提取图像的多尺度特征。[[vii]]
2.3基于深度学习的图像检索方法调研
近年来,基于深度学习的图像检索技术因其在自动提取图像特征方面的卓越能力而受到广泛关注。如图4所示,对这些方法进行了系统分类,揭示了以下几个关键领域:
- 监督类型:涵盖了从完全监督到半监督、弱监督、伪监督和自监督学习,这些方法依据数据集中标签的有无及其完整性进行区分。
- 网络类型:包括卷积网络等深度学习网络结构,它们是图像特征提取的基础。
- 描述符类型:涉及哈希描述符、真值描述符和聚合描述符等特征表示方法,用于捕捉图像的局部和全局信息。
- 检索类型:包括跨模态、多标签、基于距离、对象和基于语义的检索,这些方法定义了图像检索的具体实现方式。
- 其他因素:如损失函数设计、迁移学习、微调等,这些技术对图像检索系统的性能有显著影响。
图 4 基于深度学习的图像检索方法
在这些类别中,监督学习依赖于有标签的数据集来训练模型识别图像内容,而无监督学习则在缺乏标签的情况下挖掘数据内在结构。半监督和弱监督学习结合了有标签和无标签数据的优势,伪监督和自监督学习则通过生成对抗样本或强化学习策略提升性能。卷积网络,尤其是自编码器和生成对抗网络,为图像检索提供了强大的特征提取能力。哈希描述符和聚合描述符通过不同策略增强了特征的判别力。[[viii]]跨模态检索允许在不同模态间检索,多标签和基于距离的检索提供了灵活的检索方式,对象检索和基于语义的检索则侧重于图像内容的深入理解。损失函数设计、迁移学习、微调等技术的应用,是提升图像检索系统性能的关键。通过这些方法的综合应用,基于深度学习的图像检索技术能够更精准地满足用户的检索需求。
三、初步设计方法与实施方案
3.1环境准备
如表1所示,Intel(R) Core(TM) i7-11800H CPU @2.30GHZ处理器,运行在64位windows11的PC机环境下。系统的图像检索算法基于自建的青花瓷文物图像数据库,使用 Python 语言进行开发,并结合 PyTorch 深度学习框架构建和训练模型。通过输入训练数据、设定参数和优化设置,实现了高效的图像特征提取和匹配。为了满足博物馆图像数据治理的需求,优化后的图像检索算法被应用于该系统中,采用 Flask + MySQL 的后端架构与 Vue.js + Element UI 的前端架构,搭建了青花瓷文物图像检索的 Web 系统。整个系统充分利用了硬件加速(CUDA 12.3),确保了图像处理和模型训练的高效性。
表1 系统开发环境
类别 | 详细信息 |
硬件配置 | |
处理器 | Intel(R) Core(TM) i7-11800H @2.30HZ |
显卡 | NVIDIA RTX 3060 |
操作系统 | Windows 11 (64位) |
开发工具 | |
IDE | PyCharm 2024, WebStorm 2024 |
后端 | |
编程语言 | Python 3.11 |
Web框架 | Flask 3.0 |
深度学习框架 | PyTorch 2.4.1 |
数据库 | MySQL 8.0 |
CUDA版本 | CUDA 12.3 |
前端 | |
前端框架 | Vue 3 |
UI组件库 | Element UI |
图像处理 | |
图像处理库 | OpenCV-Python 4.10 |
3.2初步设计
3.2.1功能模块设计
如图5所示,基于深度学习的青花瓷图像检索系统主要包含以下模块:
- 图像检索功能:用户上传文物图片,系统自动检索相似或相关文物,提供基于图像内容、纹样特征及组合条件的多模式检索。
- 用户管理:系统设置分级权限管理:超级管理员统一管理用户,普通管理员可修改个人信息。支持与博物馆身份认证系统对接,实现单点登录,普通用户能够查看浏览青花瓷信息与图像检索。
- 跨语言支持:实现多语言资源管理,以及根据用户系统语言或语言偏好自动切换。
- 文物信息展示:提供检索结果的详细信息,以及总文物信息的统计概览图表,帮助管理员清晰了解数据,提升管理效率。检索结果可视化界面支持图像相似度排序,便于用户分析。
图 5 系统功能模块图
3.2.2系统流程设计
如图6所示,系统流程起始于用户进入系统,随后系统支持自动语言切换,并展示文物的总体信息。用户上传图像后,系统进行检索处理,最终输出检索结果,完成整个图像检索流程。
图 6 系统总体流程
3.2.3图像检索流程设计
如图7所示,图像检索的流程包括几个步骤:输入图像、图像增强、主干网进行特征提取、度量学习和排序输出。在模型训练过程中,首先需要对训练数据进行背景分割、尺寸归一化和数据增强的预处理操作,然后通过主干网进行训练,待检索图像输入之后将通过本模型进行特征提取,生成特征向量与图像的特征库进行相似度度量,最后输出按相似程度排序的检索结果。
图 7 图像检索流程
3.2.4用例设计
- 超级管理员用例设计:
图 8 超级管理员用例图
- 普通管理员用例设计:
图 9 普通管理员用例图
- 普通用户用例设计:
图 10 普通用户用例图
3.3实施方案
1.需求分析与规划
明确系统功能需求,确定技术选型和开发平台。与导师进行多次沟通,确保全面理解项目需求。
制定详细的项目计划书,包括时间表、资源分配等内容,为后续工作提供明确的指导方针。
2.数据收集与预处理
收集并整理大量的青花瓷文物图片,建立高质量的数据集。
对原始图片进行标准化处理,确保训练数据的一致性。如图11所示,还将运用EasyData平台(https://console.bce.baidu.com/)对图片进行标注,标记出重要的特征点和区域。
图 11 EasyData平台标注示例
3.模型训练与优化
使用标注好的文物图片数据集训练CNN模型,不断调整参数以达到最佳效果。采用迁移学习技术,利用已有的大型图像数据集预训练模型,再针对特定任务进行微调。
引入数据增强技术,如旋转、缩放、裁剪等,扩充训练样本,减少过拟合风险。同时,还将使用交叉验证方法评估模型性能,确保其稳定性和可靠性。
4.系统集成与测试
将训练好的模型部署到服务器端,搭建前后端交互接口。前端采用现代Web开发框架(如Vue.js),保证界面友好且响应迅速;后端则使用Python Flask框架。
进行严格的单元测试和集成测试,确保各模块正常运行。编写详细的测试用例,涵盖各种可能的情况,以发现潜在问题。
邀请部分用户参与试用,收集反馈意见,持续改进系统性能。通过用户测试,可以更好地了解实际使用中的痛点,并及时作出调整。
四、参考资料
[[i]] 原颖,杜煜,苗思琦,等.基于深度学习的图像分割方法及研究现状[C]//中国计算机用户协会网络应用分会.中国计算机用户协会网络应用分会2023年第二十七届网络新技术与应用年会论文集.北京联合大学北京市信息服务工程重点实验室;北京联合大学机器人学院;,2023:4.DOI:10.26914/c.cnkihy.2023.055292.
[[ii]] 邢素霞,李珂娴,方俊泽,等.深度学习下的医学图像分割综述[J/OL].计算机工程与应用,1-18[2025-01-02].http://kns.cnki.net/kcms/detail/11.2127.TP.20241220.1232.005.html.
[[iii]] 胡伟榕.基于改进DeepLab V3+的皮肤癌医学图像分割方法研究[D].武汉纺织大学,2022.DOI:10.27698/d.cnki.gwhxj.2022.000259.
[[iv]] E. Shelhamer, J. Long and T. Darrell, "Fully Convolutional Networks for Semantic Segmentation," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 39, no. 4, pp. 640-651, 1 April 2017, doi: 10.1109/TPAMI.2016.2572683.
keywords: {Semantics;Image segmentation;Training;Convolution;Computer architecture;Proposals;Fuses;Semantic Segmentation;Convolutional Networks;Deep Learning;Transfer Learning},
[[v]] 季长清,王兵兵,秦静,等.深度特征的实例图像检索算法综述[J].计算机科学与探索,2023,17(07):1565-1575.
[[vi]] 刘美旗.基于特征金字塔融合和注意力机制的晶圆图识别分类研究[D].桂林电子科技大学,2023.DOI:10.27049/d.cnki.ggldc.2023.001070.
[[vii]] 丁艺,刘韬,王振亚.自适应加权Savitzky-Golay滤波的轴承早期故障特征提取[J].制造技术与机床,2024,(06):58-66.DOI:10.19287/j.mtmt.1005-2402.2024.06.009.
[[viii]] 王祺.基于自注意力和深度哈希的图像检索技术研究[D].北方工业大学,2023.DOI:10.26926/d.cnki.gbfgu.2023.000325.
相关文章:

基于深度学习的青花瓷图像检索系统开发与实现
目录 1.研究背景与目的 1.1课题背景 1.2研究目的 二、调研资料情况 2.1图像分割研究现状 2.2图像检索调研 2.2.1选择深度学习进行检索的原因及优势 2.2.2基于深度学习的图像检索技术的发展 2.2.3基于深度学习的图像检索的研究重点 2.3基于深度学习的图像检索方法调研 …...

uniapp 系统学习,从入门到实战(八)—— Vuex 的使用
全篇大概 4500 字(含代码),建议阅读时间 30min 📚 目录 Vuex核心概念解析在 UniApp 中集成Vuex状态管理与数据共享实践总结 一、Vuex 核心概念解析 1.1 什么是状态管理 在跨多组件的大型应用中,不同页面/组件需要共享和修改相同数据时&am…...

Vue Hooks 深度解析:从原理到实践
Vue Hooks 深度解析:从原理到实践 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家!点我试试!! 文章目录 Vue Hooks 深度解析:从原理到实践一、背景…...

django中序列化器serializer 的高级使用和需要注意的点
在 Django REST framework(DRF)中,序列化器(Serializer)是一个强大的工具,用于将复杂的数据类型(如 Django 模型实例)转换为 Python 原生数据类型,以便将其渲染为 JSON、XML 等格式,同时也能将接收到的外部数据反序列化为 Django 模型实例。以下将介绍序列化器的高级…...

靶场(二)---靶场心得小白分享
开始: 看一下本地IP 21有未授权访问的话,就从21先看起 PORT STATE SERVICE VERSION 20/tcp closed ftp-data 21/tcp open ftp vsftpd 2.0.8 or later | ftp-anon: Anonymous FTP login allowed (FTP code 230) |_Cant get dire…...

PHP Error处理指南
PHP Error处理指南 引言 在PHP开发过程中,错误处理是一个至关重要的环节。正确的错误处理不仅能够提高代码的健壮性,还能提升用户体验。本文将详细介绍PHP中常见的错误类型、错误处理机制以及最佳实践,帮助开发者更好地应对和处理PHP错误。 PHP错误类型 在PHP中,错误主…...

视频输入设备-V4L2的开发流程简述
一、摄像头的工作原理与应用 基本概念 V4L2的全称是Video For Linux Two,其实指的是V4L的升级版,是linux系统关于视频设备的内核驱动,同时V4L2也包含Linux系统下关于视频以及音频采集的接口,只需要配合对应的视频采集设备就可以实…...

【Manus资料合集】激活码内测渠道+《Manus Al:Agent应用的ChatGPT时刻》(附资源)
DeepSeek 之后,又一个AI沸腾,冲击的不仅仅是通用大模型。 ——全球首款通用AI Agent的破圈启示录 2025年3月6日凌晨,全球AI圈被一款名为Manus的产品彻底点燃。由Monica团队(隶属中国夜莺科技)推出的“全球首款通用AI…...

Mybatis集合嵌套查询,三级嵌套
三个表:房间 玩家 玩家信息 知识点:Mybatis中级联有关联(association)、集合(collection)、鉴别器(discriminator)三种。其中,association对应一对一关系、collectio…...

thinkphp5.1 在fetch模版就超时
场景 当被渲染模版不存在,请求不响应任何内容,过一会就timeout 排查过程 使用xdebug,追踪代码,发现走到D:\temporary_files\m40285_mini\40285_mini\thinkphp\library\think\exception\Handle.php,进入死循环,一直…...

Dockerfile 深入浅出:从基础到进阶全解析
Dockerfile 深入浅出:从基础到进阶全解析 各位同学,大家好!欢迎来到今天的 Dockerfile 课程。Docker 技术在当今的软件开发和部署领域可以说是非常热门,而 Dockerfile 作为构建 Docker 镜像的关键文件,掌握它对于我们…...

CAD2025电脑置要求
Windows 系统 操作系统:64 位 Microsoft Windows 11 和 Windows 10 version 1809 或更高版本。 处理器 基本要求:2.5-2.9GHz 处理器,不支持 ARM 处理器。 推荐配置:3GHz 以上处理器(基础),4GHz …...

android App主题颜色动态更换
如何在Android开发中更换主题颜色,现在他们又问了关于动态更换应用主题颜色的问题。看来他们可能在实现过程中遇到了困难,或者需要更详细的动态切换指导。首先,我需要回顾之前的回答,看看是否已经覆盖了动态切换的部分,…...

微服务,服务治理nacos,负载均衡LOadBalancer,OpenFeign
1.微服务 简单来说,微服务架构风格[1]是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在 自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并 且可通过全自动部署机制独立部署。这…...

浅论数据库聚合:合理使用LambdaQueryWrapper和XML
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、数据库聚合替代内存计算(关键优化)二、批量处理优化四、区域特殊处理解耦五、防御性编程增强 前言 技术认知点:使用 XM…...

FastGPT 引申:混合检索完整实例
文章目录 FastGPT 引申:混合检索完整实例1. 各检索方式的初始结果2. RRF合并过程3. 合并后的结果4. Rerank重排序后5. 最终RRF合并6. 内容总结 FastGPT 引申:混合检索完整实例 下边通过一个简单的例子说明不同检索方式的分值变化过程,假设我…...

Socket.IO聊天室
项目代码 https://github.com/R-K05/Socket.IO- 创建项目 服务端项目和客户端项目 安装Socket依赖 服务端 npm i socket.io 客户端 npm i socket.io-client 客户端添加聊天页面 源码 服务端 app.js const express require("express") const app express()co…...

MySQL表中数据基本操作
1.表中数据的插入: 1.insert insert [into] table_name [(column [,column]...)] values (value_list) [,(value_list)] ... 创建一张学生表: 1.1单行指定列插入: insert into student (name,qq) values (‘张三’,’1234455’); values左…...

可狱可囚的爬虫系列课程 16:爬虫重试机制
一、retrying模块简介 在爬虫中,因为我们是在线爬取内容,所以可能会因为网络、服务器等原因导致报错,那么这类错误出现以后,我们想要做的肯定是在报错处进行重试操作,Python提供了一个很好的模块,能够直接帮…...

第十五届蓝桥杯----B组cpp----真题解析(小白版本)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 必看前言!!!!!一、试题A:握手问题1.题意分析2.代码解答 二、试题B:小球反弹1.题意…...

软考架构师笔记-数据库系统
1.7 数据库系统 三级模式-两级映射 三级模式 外模式:用户视图概念模式:只涉及描述内模式:存储方式的描述 两级映射 外模式-概念模式映射概念模式-内模式映射 数据库的设计 步骤 需求分析 输出为需求分析、数据流图(Data FLow Diagram-DF…...

Spring AI 1.0.0-M6 快速开始(一)
Spring AI 1.0.0-M6 入门一、存储库二、依赖管理完整maven 入门 Spring 是JAVA中我们经常使用的框架之一,Spring AI不断的发展迭代目前已经到M6版本据说上半年会出一个稳定版本。 本节提供了如何开始使用Spring AI的M6。 一、存储库 1.0 M6 -添加Spring存储库 需…...

go 分布式redis锁的实现方式
go 语言以高并发著称。那么在实际的项目中 经常会用到锁的情况。比如说秒杀抢购等等场景。下面主要介绍 redis 布式锁实现的两种高并发抢购场景。其实 高并发 和 分布式锁 是一个互斥的两个状态: 方式一 setNX: 使用 redis自带的API setNX 来实现。能解决…...

Unity中Stack<T>用法以及删除Stack<GameObject>的方法
Unity中Stack用法以及删除Stack的方法 介绍Stack<T>的APIStack<T> 常用方法创建和初始化 Stack<T>Push 和 Pop 操作Stack<T>遍历清空栈检查栈是否包含某个元素 栈的典型应用场景撤销操作深度优先搜索(DFS)注意事项 总结 介绍 因…...

Vue进阶之Vue3源码解析(二)
Vue3源码解析 运行runtime-coresrc/createApp.tssrc/vnode.ts.tssrc/renderer.ts runtime-domsrc/index.ts 总结 运行 runtime-core src/createApp.ts vue的创建入口 import { createVNode } from "./vnode";export function createAppAPI(render) {return funct…...

linux的文件系统及文件类型
目录 一、Linux支持的文件系统 二、linux的文件类型 2.1、普通文件 2.2、目录文件 2.3、链接文件 2.4、字符设备文件: 2.5、块设备文件 2.6、套接字文件 2.7、管道文件 三、linux的文件属性 3.1、关于权限部分 四、Linux的文件结构 五、用户主目录 5.1、工作目录…...

如何下载安装 PyCharm?
李升伟 整理 一、下载 PyCharm 访问官网 打开 PyCharm 官网,点击 "Download" 按钮25。 版本选择: 社区版(Community):免费使用,适合个人学习和基础开发。 专业版(Professional&#…...

3D空间曲线批量散点化软件V1.0正式发布,将空间线条导出坐标点,SolidWorks/UG/Catia等三维软件通用
软件下载地址: SolidWorks/UG/Catia等三维软件通用,3D空间曲线批量散点化软件V1.0正式发布,将空间线条导出坐标点 - 陶小桃Blog在三维设计领域,工程师常需将复杂空间曲线转化为离散坐标点以用于逆向工程、有限元分析、数控加工或…...

WPS AI+office-ai的安装、使用
** 说明:WPS AI和OfficeAI是两个独立的AI助手,下面分别简单讲下如何使用 ** WPS AI WPS AI是WPS自带AI工具 打开新版WPS,新建文档后就可以看到菜单栏多了一个“WPS AI”菜单,点击该菜单,发现下方出现很多菜单…...

java后端开发day27--常用API(二)正则表达式爬虫
(以下内容全部来自上述课程) 1.正则表达式(regex) 可以校验字符串是否满足一定的规则,并用来校验数据格式的合法性。 1.作用 校验字符串是否满足规则在一段文本中查找满足要求的内容 2.内容定义 ps:一…...