前言
P R E F A C E
信号处理是从信号抽取出有用信息的过程,包括提取、变换、分析、综合等处理过程。随着计算机技术发展,信号处理的理论和方法得以发展。MATLAB是由美国MathWorks
公司开发的主要面对科学计算、可视化以及交互式程序设计的高科技计算软件,它将数值分析、矩阵计算、科学数据可视化及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案。近20年来,由MathWorks公司开发的MATLAB软件,被广泛地应用到了信号处理的课程教学和实验中。
开源软件的发展推动了行业创新和科学技术进步。Python语言因其简洁性、易读性以及可扩展性,用于科学计算的研究日益增多。Python完全免费,众多开源的科学计算库提供了Python的调用接口。用户可以在任何计算机上免费安装Python及其绝大多数扩展库。Python标准库命名接口清晰、文档良好,很容易学习和使用。Python社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖科学计算、Web开发、数据库接口、图形系统等领域,并且大多成熟而稳定。SciPy(Scientific Python)是一个开源的Python算法库和数学工具包,包含最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解,以及其他科学与工程中常用的计算。自 2001年首次发布以来,SciPy已经成为Python语言中科学算法的行业标准。目前除了MATLAB的一些专业性很强的工具箱还无法被替代之外,MATLAB的大部分常用功能可以在Python中找到相应的扩展库。
大语言模型是基于Transformer架构的自然语言处理模型,它们通过预训练学习大规模的语言数据,可以在各种自然语言处理任务上展现出色的性能。大语言模型可以作为一个教学工具,帮助用户更轻松地了解信号处理编程和仿真的基本概念和操作,可以提供智能建议和提示,帮助用户优化信号处理算法、调整参数和改进仿真结果。借助大语言模型进行信号处理仿真和应用的辅助编程有着巨大的发展潜力。
本书参考MATLAB Signal Processing Toolbox的体系架构及其函数和实例组织方式,对应整理并编写了基于Python的信号处理工具箱(Python Signal Processing Toolbox,PySPT)实例。本书共8章。第1章是信号处理概况,介绍了MATLAB和Python的信号处理工具箱架构;第2章是Python编程基础,介绍了开发环境和NumPy、SciPy等科学计算库;第3章是信号生成和预处理,介绍了信号进行创建、重采样、平滑、去噪和去趋势处理方面的实例,为进一步分析做好准备;第4章是测量和特征提取,介绍了可用于测量信号的时域和频域常见不同特征的实例;第5章是变换、相关性和建模,介绍了可用于计算信号的相关性、卷积和变换的实例;第6章是数字和模拟滤波器,介绍了用于设计、分析和实现各种数字有限脉冲响应(Finite Impulse Response,FIR) 和无限脉冲响应(Inf inite Impulse Response,IIR) 滤波器的实例;第7章是频谱分析,介绍了一系列频谱分析函数,用于表征信号的频率成分的实例。第8章是借助大语言模型实现信号处理,选择第3~7章案例,借助大语言模型进行辅助编程,展示了大语言模型在信号处理仿真和应用领域如何提高用户交互体验和工作效率。

配 套 资 源

程序代码等资源:扫描目录上方的“配套资源”二维码下载。
教学课件、教学大纲等资源:扫描封底的“书圈”二维码在公众号下载,或者到清华大学出版社官方网站本书页面下载。
微课视频(105分钟,30集) :扫描书中相应章节中的二维码在线学习。

注:请先扫描封底刮刮卡中的文泉云盘防盗码进行绑定后再获取配套资源。
本书已经获得北京理工大学“十四五”规划教材立项。
周治国
2024年7月