范羚
摘 要 Matlab是本科教學(xué)和學(xué)習(xí)中較為重要的仿真軟件之一,也是一門實(shí)踐性較強(qiáng)的學(xué)科。為提高教學(xué)效果,培養(yǎng)學(xué)生解決實(shí)際問題的能力,更好的與實(shí)際應(yīng)用接軌,提出將Matlab編程與相關(guān)課程結(jié)合,進(jìn)行Matlab模塊化教學(xué)模式和分級(jí)實(shí)驗(yàn)的改革和探討。實(shí)踐證明,這種綜合性教學(xué)模式有效的提高了學(xué)生的學(xué)習(xí)積極性,收到了較好的教學(xué)效果。
關(guān)鍵詞 Matlab 模塊化教學(xué) 分級(jí)實(shí)驗(yàn) 教學(xué)方法
中圖分類號(hào):G712 文獻(xiàn)標(biāo)識(shí)碼:A
1存在問題
Matlab是目前國際上應(yīng)用較廣泛的科學(xué)與工程類計(jì)算軟件,也是本科教學(xué)中理工科學(xué)生較為重要的一門基礎(chǔ)工具課。現(xiàn)在,在我國各大高校中,Matlab已經(jīng)成為大學(xué)生必須掌握的基本技能之一,人工智能,神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)更是離不開Matlab的仿真和驗(yàn)證。如何讓Matlab技能課程的特點(diǎn)得到充分發(fā)揮,并區(qū)別于我系其他電子信息類專業(yè)課程,成為我系本科教學(xué)改革的主要內(nèi)容之一。所謂技能課程,應(yīng)該將實(shí)際應(yīng)用放在首位,以提高學(xué)生的實(shí)際編程應(yīng)用能力為主,而相關(guān)課程的理論學(xué)習(xí)可以為輔,或安排在高年段進(jìn)行系統(tǒng)的理論學(xué)習(xí)。如大學(xué)生計(jì)算機(jī)基礎(chǔ),C語言等課程在我國多數(shù)高校中,已均在大一或大二完成教學(xué),為學(xué)生后續(xù)相關(guān)課程的學(xué)習(xí)打下計(jì)算機(jī)及編程基礎(chǔ)。因此,本次改革旨在提高M(jìn)atlab課程的實(shí)用性,更好發(fā)揮其技能課的優(yōu)勢,輔助學(xué)生其他課程的學(xué)習(xí)。
目前,我系Matlab課程的教學(xué)安排較后,主要作為高年段學(xué)生的選修課程開設(shè),而大部分與之關(guān)聯(lián)的課程,如“信號(hào)與系統(tǒng)”,“數(shù)字信號(hào)處理”,“圖像處理”,“語音信號(hào)處理”等均在大二或大三進(jìn)行教學(xué),這些課程理論性相對(duì)較強(qiáng),學(xué)生缺少實(shí)際應(yīng)用,對(duì)課程掌握深度不夠。如何利用Matlab強(qiáng)大的矩陣處理與科學(xué)計(jì)算功能,幫助學(xué)生更深入掌握這些課程的理論知識(shí),且利用Matlab中相關(guān)函數(shù)進(jìn)行實(shí)際演示,便成為此次Matlab教學(xué)探討的主要內(nèi)容。本次教學(xué)改革將Matlab課程提前至第3學(xué)期開課,超前于數(shù)字信號(hào)處理,語音信號(hào)處理等課程,在學(xué)生學(xué)習(xí)完高等數(shù)學(xué),線性代數(shù)的基礎(chǔ)上,便進(jìn)行Matlab軟件的編程學(xué)習(xí),讓學(xué)生先學(xué)會(huì)用工具解決問題,再慢慢領(lǐng)會(huì)各種函數(shù)的編程原理,以突出Matlab技能課程的特點(diǎn)。
2課程改革的主要內(nèi)容
針對(duì)Matlab課程的這些特點(diǎn),本次教學(xué)改革的內(nèi)容主要包括以下幾個(gè)方面:
2.1適當(dāng)提前Matlab課程教學(xué)學(xué)期
將Matlab課程開課學(xué)期提前至第3學(xué)期進(jìn)行,更好的與“信號(hào)與系統(tǒng)”,“數(shù)字信號(hào)處理”及“語音信號(hào)處理”等課程相結(jié)合。第3學(xué)期的“信號(hào)與系統(tǒng)”課程中,涉及的傅里葉變換,拉普拉斯變換和z變換等理論,均可利用Matlab強(qiáng)大的編程能力進(jìn)行編程和仿真。若將Matlab課程提前,可更好地將Matlab編程和相關(guān)的信號(hào)與系統(tǒng)理論相結(jié)合,讓學(xué)生更深入理解傅里葉變換,拉普拉斯變換和z變換的原理,并將枯燥的理論公式,用形象具體的二維圖像進(jìn)行顯示和處理,同時(shí)也可提高學(xué)生Matlab編程的能力。
2.2以模塊化和分級(jí)實(shí)驗(yàn)為主進(jìn)行教學(xué)方法改革
該課程在我系的教學(xué)計(jì)劃中,理論學(xué)時(shí)為16學(xué)時(shí),分別講述Matlab的常用窗口和文件管理,數(shù)值計(jì)算,符號(hào)計(jì)算,可視化和圖形用戶界面(GUI)設(shè)計(jì),及Matlab綜合程序設(shè)計(jì)五大內(nèi)容,并配以16學(xué)時(shí)的實(shí)驗(yàn)課。在實(shí)驗(yàn)課中以教材的這5個(gè)獨(dú)立章節(jié)為基礎(chǔ),分別設(shè)計(jì)完成5個(gè)獨(dú)立的實(shí)驗(yàn),以教師指定實(shí)驗(yàn)題目為主,且大部分屬于編程驗(yàn)證型實(shí)驗(yàn),5個(gè)實(shí)驗(yàn)間并沒有明顯的相關(guān)性,也缺少和電子信息類其他課程的關(guān)聯(lián),絕大多數(shù)實(shí)驗(yàn)內(nèi)容用獨(dú)立的語句即可編程實(shí)現(xiàn),學(xué)生自主發(fā)揮的余地較少。這樣的實(shí)驗(yàn)設(shè)計(jì)雖然可以讓學(xué)生掌握Matlab的基本編程原理,但與其他課程的關(guān)聯(lián)性較小,獨(dú)立的綜合型實(shí)驗(yàn)較少,學(xué)生缺少主動(dòng)創(chuàng)新性設(shè)計(jì),較難區(qū)分學(xué)生思維及編程能力的高低。
因此提出以模塊化為主的教學(xué)方法改革,旨在增強(qiáng)學(xué)生的學(xué)習(xí)興趣和獨(dú)立創(chuàng)新的能力,給不同學(xué)習(xí)程度的學(xué)生不同的發(fā)揮空間,盡可能做到因材施教。在理論課時(shí)中,除按教材給定的章節(jié)進(jìn)行講解外,注重與電子信息類相關(guān)課程進(jìn)行適當(dāng)結(jié)合,讓學(xué)生體會(huì)到課程的連貫性和相互結(jié)合性,再配以相關(guān)實(shí)驗(yàn)進(jìn)行輔助學(xué)習(xí),以提高學(xué)生對(duì)課程的理解和運(yùn)用能力。
在Matlab符號(hào)計(jì)算和數(shù)值計(jì)算兩章中,將“Matlab”與“線性代數(shù)”結(jié)合,完成第一模塊“Matlab在線性代數(shù)中的應(yīng)用”實(shí)驗(yàn),具體可設(shè)計(jì)線性代數(shù)方程的求解,方程特征值和特征向量的求解,多項(xiàng)式的擬合和插值等實(shí)驗(yàn)內(nèi)容,屬于基礎(chǔ)驗(yàn)證型實(shí)驗(yàn),旨在讓學(xué)生熟悉Matlab的基本編程思路和編程模式,學(xué)習(xí)獨(dú)立調(diào)試程序的方法。
在Matlab計(jì)算可視化和GUI設(shè)計(jì)章節(jié)中,將“Matlab”與“信號(hào)與系統(tǒng)”結(jié)合,完成第二模塊“Matlab在信號(hào)處理中的應(yīng)用”實(shí)驗(yàn)。該模塊將結(jié)合信號(hào)與系統(tǒng)中的三大重要變換:傅里葉變換,拉普拉斯變換和z變換,分別選取時(shí)間域,頻率域,S域和Z域?yàn)橹饕芯繉?duì)象,對(duì)相關(guān)函數(shù)fft(),ifft(),laplace(),ilaplace(),ztrans(),iztrans()等進(jìn)行詳細(xì)分析,并結(jié)合Matlab的可視化工具,利用GUI進(jìn)行用戶圖形界面編程,設(shè)計(jì)完成一個(gè)可以和信號(hào)與系統(tǒng)課程相結(jié)合的輔助學(xué)習(xí)平臺(tái),加深學(xué)生對(duì)三大主要變換的理解,并在完成的用戶圖形界面中,分別對(duì)時(shí)域信號(hào),頻域信號(hào),s域和z域信號(hào)進(jìn)行展示。學(xué)生不僅可以掌握Matlab的可視化編程方法,更將信號(hào)與系統(tǒng)的課程進(jìn)行了滲透,增強(qiáng)了課程間的相互關(guān)聯(lián)性,提高了學(xué)生學(xué)習(xí)興趣。
在Matlab程序設(shè)計(jì)章節(jié)中,根據(jù)教材內(nèi)容,主要講解Matlab程序設(shè)計(jì)中的流程控制,M函數(shù)文件和腳本文件的編程,函數(shù)調(diào)用和參數(shù)傳遞等高級(jí)編程方法。在此基礎(chǔ)上,完成第三模塊“Matlab在圖像處理中的應(yīng)用”實(shí)驗(yàn)。此前第二模塊實(shí)驗(yàn)以處理一維信號(hào)為主,因此在第三模塊實(shí)驗(yàn)中,以處理二維圖像信號(hào)為主,將實(shí)驗(yàn)進(jìn)行進(jìn)一步提升。該模塊實(shí)驗(yàn)以M函數(shù)文件和腳本文件編程為主,通過圖像的打開,讀取,變換,顯示和保存等步驟,進(jìn)一步強(qiáng)化Matlab的編程思路,培養(yǎng)學(xué)生嚴(yán)謹(jǐn)認(rèn)真的編程習(xí)慣和編程風(fēng)格。該模塊實(shí)驗(yàn)分級(jí)進(jìn)行,基礎(chǔ)模塊中主要實(shí)現(xiàn)數(shù)字圖像處理的一些基本操作,如利用直方圖完成圖像的統(tǒng)計(jì)特性分析,利用點(diǎn)運(yùn)算和代數(shù)運(yùn)算完成圖像的偽色彩處理和圖像融合,根據(jù)圖像時(shí)頻變換的特點(diǎn),完成二維圖像的傅里葉變換和離散余弦變換等,并結(jié)合第二模塊中的GUI設(shè)計(jì)完成基于數(shù)字圖像處理的圖形用戶界面設(shè)計(jì);提高模塊中,設(shè)計(jì)一些較復(fù)雜的圖像處理課題進(jìn)行實(shí)驗(yàn),如在學(xué)習(xí)圖像處理的相關(guān)基礎(chǔ)理論后,進(jìn)行圖像分割,圖像邊緣檢測等綜合型開放型實(shí)驗(yàn),充分發(fā)揮學(xué)生的主動(dòng)性,進(jìn)行自主的多元化編程探索。實(shí)驗(yàn)過程中,教師將對(duì)編程過程中用到的理論知識(shí)進(jìn)行講解和指導(dǎo),具體的實(shí)現(xiàn)步驟和處理過程則交由學(xué)生自主設(shè)計(jì),以此來調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性和自主創(chuàng)新的能力。
3總結(jié)
本次Matlab課程教學(xué)改革提出以模塊化為基本教學(xué)手段的改革思路。在我系之前的教學(xué)安排中,Matlab課程理論課部分全部按教材的章節(jié)順序進(jìn)行授課,實(shí)驗(yàn)課程安排在理論課程全部結(jié)束之后,以各章節(jié)內(nèi)容為依托,設(shè)計(jì)相關(guān)5個(gè)實(shí)驗(yàn),但各實(shí)驗(yàn)間并無明顯的相互聯(lián)系和提高。此次教學(xué)模式探索,將在理論部分適當(dāng)引入相關(guān)課程,如信號(hào)與系統(tǒng),語音信號(hào)處理,圖像處理等的基礎(chǔ)知識(shí),并結(jié)合高等數(shù)學(xué),信號(hào)與系統(tǒng),圖像處理三大模塊進(jìn)行實(shí)驗(yàn),將原來獨(dú)立的驗(yàn)證型實(shí)驗(yàn)提升為設(shè)計(jì)型,綜合型實(shí)驗(yàn),同時(shí)也增加了各模塊間的相互關(guān)聯(lián)性。第一模塊以Matlab在線性代數(shù)中的應(yīng)用為主,進(jìn)行一些多項(xiàng)式的變換,線性方程的求解等,旨在讓學(xué)生熟悉Matlab的編程思路和編程方法;第二模塊將Matlab和信號(hào)與系統(tǒng)課程結(jié)合,以一維信號(hào)變換為主,并進(jìn)行相關(guān)GUI設(shè)計(jì);在此基礎(chǔ)上,進(jìn)行第三模塊設(shè)計(jì),對(duì)二維圖像進(jìn)行變換編程,進(jìn)一步提高學(xué)生的動(dòng)手能力。在第三模塊中,我們還將進(jìn)行學(xué)生分級(jí)實(shí)驗(yàn)的改革,基礎(chǔ)模塊中進(jìn)行圖像處理的初級(jí)操作,提升模塊中,完成較復(fù)雜的圖像處理,如圖像分割,邊緣檢測算法的實(shí)現(xiàn)等,并為后期的畢業(yè)設(shè)計(jì)課題做準(zhǔn)備,以此做到因材施教。但此部分實(shí)驗(yàn)設(shè)計(jì)較難,需根據(jù)學(xué)生的學(xué)習(xí)水平進(jìn)行實(shí)時(shí)調(diào)整和指導(dǎo),課題需具備一定難度,但又必須在學(xué)生可以完成的范圍內(nèi),不能超出。因此,需要教師對(duì)學(xué)生的學(xué)習(xí)情況進(jìn)行綜合了解,全面掌握學(xué)生的學(xué)習(xí)能力。
總之,如何根據(jù)Matlab語言的特點(diǎn),進(jìn)行有針對(duì)性的教學(xué),是培養(yǎng)電子信息類應(yīng)用型、創(chuàng)新型人才的一個(gè)重要任務(wù)。實(shí)踐證明,根據(jù)Matlab課程特點(diǎn)提出的模塊化教學(xué)改革,及分級(jí)型實(shí)驗(yàn)較好的結(jié)合了我系學(xué)生的具體實(shí)際,增加了學(xué)生學(xué)習(xí)的積極性和Matlab課程教學(xué)的實(shí)際效果。
基金項(xiàng)目:本文系“廈門工學(xué)院教學(xué)改革項(xiàng)目”(項(xiàng)目編號(hào):JG2018017)的研究成果。
參考文獻(xiàn)
[1] 張興莉,劉勇.《MATLAB語言》課程教學(xué)過程改革的研究[J].科技創(chuàng)新導(dǎo)報(bào),2018,15 (18):208-209.
[2] 何海浪,林峰,黃乘順.基于Matlab的《信號(hào)與系統(tǒng)》課程教學(xué)改革[J].教育教學(xué)論壇,2018(31):119-120.