开场白

说起Wolfram Mathematica,也就是在数学界大名鼎鼎而又高冷高深的Mathematica,其与Maple和MATLAB齐名,网络上对这三种数学软件的介绍和比较文章,并不算少,用一句套路的话做结尾就是,三者各有千秋,都不如python等程序语言灵活。在本系列的各篇章中,无意于笔头争论,而在于用鲜活的实例表明Wolfram Mathematica拥有其他语言并不具备的,但在人们的认知演进过程中又不可缺少的内容,而这些内容对于数学,数据和计算方面专业素养和品质的提升,尤为重要。如果你能够看完这一个系列,相信可以看到,mathematica本身的独特魅力,以及当其与Python,Julia,C,Rust等任何编程语言结合在一起时的高妙效果。

Wolfram Mathematica,顾名思义,所使用的是Wolfram 语言,作者就是著名的Stefen Wolfram(关于此人,大家可以自行搜索),可见这个语言随了他家的姓。该语言与C++,Python,Java的语言相比,就是其更加接近人类的自然语言,具有很大的简易和互动性,当然这里的自然语言是指白话英文(plain English),该语言被设计成一中基于知识(knowledge-cbased)的语言,而这一特性会在后续一一体现。再者,该语言的一个重点是把在当前世界上可以转化为计算的问题进行高效而优雅的计算。

有关软件环境,需要安装最新版的mathematica,这是付费软件,如果你想免费使用的话,可自行检索,定有所得;或者使用在线的开发环境https://www.wolfram.com/programming-lab/

首先就通过mathematica的图像处理的功能,形象直观的进入该语言的世界。

玩转图像

千挑万选,找了一张高晓松老师的美照,以这张照片为基础,我们来进行一些有趣的处理(mei rong).

导入部分很简单,在⽹络图片处copy,⽽后在notebook处的Edit窗⼝选择paste,

读入以上高晓松的图片

先对原⾊取否,使⽤如下函数

按下shift + enter执⾏,结果如下

做一下模糊处理:

上图的模糊程度不够⾼,我们再来加些参数, 看够模糊了吧

这里可以同时把不同模糊程度的多个图放到表格⾥

也可以无缝拼接以上四张图

如果想看看图片的主要颜色构成,可以这样

进⾏⿊⽩化,回到上世纪的早期了似乎

这⾥可以做个双重操作,先进⾏图片⿊⽩化,再查看主体颜⾊沟通,所以结果很简单,对吧!

在图像分析⾥,边缘检测也是很重要的⼀个内容,⾃然是不会缺少的,我们看下,该语言处理的还是很可以的。

这⾥我们把边缘与原图重叠⼀下,做起来也非常⽅便,⾼老师的胡⼦茬儿很有特点吧:

事实上,对于处理程度都可以做出⼀个互动界⾯,进⾏动态调整的,移动以下的移动条就行

当想要对图片进⾏操作时,也可以像其他程序语⾔⼀样,进⾏对象定义和赋值。

当涉及到⼀些数量特征,我们看下,比如关于图片的维度,可见是558*328

比如想看前100个像素

如果只想看30 - 100 ⾏和60 - 130 列的部分的内容

至此,先介绍这些,有关其他常规操作拉伸,旋转,对称等,或者定量操作,或者高级操作如图像识别等,会在后续的专题中一一涉及。所以,这里最终感谢一下高晓松老师。

音频处理简介

在mathematica中,也是可以直观处理声⾳,这⾥做⼀下简介。

可惜读者们听不到声⾳了,但可以⾃⼰回去把代码实现,⾜以感受该语⾔的独特设计

这⾥播放⼀个中⾳C,点击播放就可以听到声⾳了,电⼦乐作曲之路就此开启,点击三角形可以播放,时常为一秒。

这⾥连续⽣成三个⾳

这里也⽀持简谱标记,以下的代码是与上⾯的代码等价

还可以⽣成⾳阶序列, 需要⽤到之前⽤到的Table函数

也可以设置时长,如下每个⾳阶为0 .1 秒

此处⻜来⼀个彩蛋,以下还可以模拟⼩提琴的⾳质

当然,也可以随机⽣成⾳阶,如果你喜欢的话

以上代码内容都在该pdf文件中。

结语

那么本篇就先介绍到这里,推荐读者把附件的代码自己跑一遍,多多找找感觉。后续篇章,我会把内容逐渐转到如何用mathematica做一份完整的研究报告上面。在这之前,还会系统的介绍一下相关的语法和用法,如果你有python之类语言的基础,会发觉真的一点都不难学,而且还会觉得该语言设计的很巧妙。如果你没有任何编程语言的基础,我猜你越发明显感受到,这种语言好像就跟说最简单的英文是很类似的,同时还会感受到这其中搭配编程语言的思维,竟然也像说话一样,很自然的就学会和习惯了。

高雅有趣的Wolfram Mathematica导入篇:绘声绘色的程序语言相关推荐

  1. 语言程序设计 郭有强_「概念篇8」程序语言如何被计算机理解?靠猜?那就搞笑了...

    跟着严Sir学编程继续更新.希望严Sir能用20年程序类课程教学经验,帮助更多的伙伴更加容易地学习和理解程序.在相关的文章当中,我更多的是根据自己理解来讲解,并且根据自己教学经验,对于重点和难点问题进 ...

  2. Wolfram Mathematica学习笔记2

    前言 由于这样这样又那样的原因,菜狗博主开始了他的Mathematica学习之旅. 声明 由于博主并没有抱着十分专业的心态来入坑,所以文章内容基本上就是博主在使用 Wolfram Mathematic ...

  3. 通过Java字节码发现有趣的内幕之String篇(上)(转)

    原文出处: jaffa 很多时候我们在编写Java代码时,判断和猜测代码问题时主要是通过运行结果来得到答案,本博文主要是想通过Java字节码的方式来进一步求证我们已知的东西.这里没有对Java字节码知 ...

  4. 计算机片段教学优秀教案,精彩教学片段100例—导入篇(1)

    导入篇 未成曲调先有情 课的导入部分犹如一首曲子的前奏,能使学生由课间的不同情绪很快统一到课堂的学习氛围之中.因为授课内容有所不同,于是课的导入就有了许多变化.授课教师总是想方设法调动学生对课的&qu ...

  5. 如何创建从Visual Studio到Wolfram Mathematica的简单调用

    目录 介绍 如何创建 结论 介绍 如今,随着计算机技术的飞速发展,并非总是能够使用一种编程语言来创建复杂的应用程序.不同的语言各有优缺点,通常,它们都不满足已开发应用程序的要求.解决这种情况的方法是使 ...

  6. 第7课用计算机写作文优质课例,有趣的电脑课作文9篇

    有趣的电脑课作文9篇 在日常学习.工作和生活中,大家都不可避免地会接触到作文吧,作文是从内部言语向外部言语的过渡,即从经过压缩的简要的.自己能明白的语言,向开展的.具有规范语法结构的.能为他人所理解的 ...

  7. Wolfram Mathematica学习笔记1

    前言 最近重拾高数的时候给博主整自闭了,什么极限啊.积分啊博主忘的是干干净净. 属实是应了那句 『课上学到的东西在下课的一瞬间就全部还给了老师』. 吐槽过后就要开始想办法补救. 就在博主薅着所剩无几的 ...

  8. Wolfram Mathematica 12.3免费安装教程

    注意,本文介绍的Wolfram Mathematica仅为学习用途,如果有条件请支持正版.本文参考自贴吧激活教程,有Github账号的可以点赞支持原作者. https://github.com/Tie ...

  9. 对计算机英语课的作文,有趣的电脑课作文5篇

    有趣的电脑课作文5篇 在平平淡淡的日常中,大家都经常看到作文的身影吧,借助作文人们可以反映客观事物.表达思想感情.传递知识信息.相信许多人会觉得作文很难写吧,下面是小编为大家收集的有趣的电脑课作文,供 ...

最新文章

  1. python 链表推导式 xx for xx in yy
  2. 太神奇了!使用C#实现自动核验健康码:(1)二维码识别
  3. matlab 删除路径_MATLAB使用教程(一)—新手来看
  4. NS3官方参考资料manual和tutorial
  5. java解决限制访问指定url
  6. pgsql查表名_PostgreSQL 查询一个表
  7. 【NATS streaming】NATS streaming 简介与安装
  8. Centos系统基于Docker安装tensorflow
  9. 智能排班系统、班次、班表、考勤、年假、调休、审批、请假、培训、值班、换班、加班、工时、自动排班、智能预测、人力需求预测、授权、团队、锁定量排、规则权重设置、菜单、角色、数据监控、工作台、axure
  10. javaweb实训第五天上午——Spring基础
  11. base command
  12. java实现文件的复制
  13. 考研逻辑整理 - 性质判断及其变形推理
  14. SISD、MIMD、SIMD、MISD_设计失控
  15. 基于Skeleton的手势识别:SAM-SLR
  16. CentOS8 源码编译安装 lamp环境 (apache24 + php7.3 + mysql57)
  17. Educational Codeforces Round 128 (Rated for Div. 2) E. Moving Chips(玄学)
  18. 【网络安全】一款针对Flutter的逆向工程分析工具
  19. Python模块之二:Python3 常用模块总结
  20. 大数据——频繁关联规则,置信度,支持度

热门文章

  1. JS 异步编程终极解决方案 async/await 的使用手册
  2. 史玉柱:成就曲径通幽的营销传奇故事(我的偶像列)
  3. 手机卡信号满格却显示服务器异常,手机信号满格,网速却很卡?学会这3个方法,轻松解决问题...
  4. 如何设计一个优雅健壮的Android WebView?(下
  5. JS 身份证号 姓名 正则表达式验证
  6. 用10行Python代码画了一张惊艳的山峦图
  7. Linux whereis、find和locate命令找不到文件
  8. 微信红包(C++、Python)
  9. Tuxera NTFS2023MacOS读写软件功能介绍使用
  10. Thymeleaf th:fragment局部刷新