淺談計算思維教育中建模與編程的融合 論文_第1頁
淺談計算思維教育中建模與編程的融合 論文_第2頁
淺談計算思維教育中建模與編程的融合 論文_第3頁
淺談計算思維教育中建模與編程的融合 論文_第4頁
淺談計算思維教育中建模與編程的融合 論文_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

2022年安徽省中小學(xué)教育教學(xué)論文評選淺談計算思維教育中建模與編程的融合摘要:計算思維作為核心素養(yǎng)的要素之一,在教學(xué)實(shí)踐中備受關(guān)注。文章以計算機(jī)視覺開源庫OpenCV(OpensourceComputerVision)處理圖像仿射變換為例,通過經(jīng)歷問題的抽象、建模、算法設(shè)計以及編程實(shí)現(xiàn)的全過程。分析建模與編程計算的融合對發(fā)展計算思維的重要作用,促進(jìn)對計算思維培養(yǎng)的深層次思考。關(guān)鍵詞:計算思維,數(shù)學(xué)模型,計算模型,編程,仿射變換引言:《義務(wù)教育信息科技課程標(biāo)準(zhǔn)(2022年版)》(以下簡稱“新課標(biāo)”)中明確指出計算思維是課程要培養(yǎng)的核心素養(yǎng)之一。新課標(biāo)作為課程的學(xué)習(xí)觀與教學(xué)觀的根本出發(fā)點(diǎn),倡導(dǎo)探索“場景分析、原理認(rèn)知、應(yīng)用遷移[1]”的真實(shí)性學(xué)習(xí)。本文以計算思維教育中建模與編程的融合為OpenCV處理圖像仿射變換的過程,探討如何引導(dǎo)學(xué)生解決問題的過程中“建構(gòu)模型、鍛造思維、體驗(yàn)責(zé)任[2]”。一、建模與編程的融合對培養(yǎng)計算思維的作用計算思維作為問題解決過程中的思維活動,涉及抽象、分解、建模、算法設(shè)計等計算機(jī)科學(xué)領(lǐng)域的基本方法。程序設(shè)計(編程)則是將算法“翻譯”成計算機(jī)能夠執(zhí)行的自動化到系統(tǒng)化的方法路徑親歷問題解決的全過程[4](見圖計算的形式化表達(dá),并通過編程完成自動化實(shí)現(xiàn),是問題解決全過程的關(guān)鍵環(huán)節(jié)。?從現(xiàn)實(shí)問題出發(fā)問題

數(shù)學(xué)模型?抽象?形式化

?模型化計算模型

編程計算?自動化

?系統(tǒng)化遷移運(yùn)用圖1培養(yǎng)計算思維的方法路徑12022年安徽省中小學(xué)教育教學(xué)論文評選以求1+2+…+100的累加和為例,作為一個學(xué)習(xí)循環(huán)控制結(jié)構(gòu)的典型例題,通??煞纸鉃橄铝星蠼獠襟E:1) 分析累加求和的計算模型。設(shè)置變量si(i=循環(huán)產(chǎn)生累加對象。2) 施細(xì)節(jié),最終編寫程序完成累加和的計算?,F(xiàn)算法的過程。再遇到類似的問題,完全可以遷移算法求解問題。其實(shí)對于1+2+…+ns=′n建立計算2問題,以及用程序語言實(shí)現(xiàn)自動化求解具有重要意義。分析上述教學(xué)案例可以發(fā)現(xiàn),建構(gòu)數(shù)學(xué)模型與編程完成自動化計算兩者密不可分,建模與編程的融合對培養(yǎng)計算思維具有重要作用。二、建模與編程融合的案例分析計算思維的本質(zhì)是一種問題解決的思維方式,建模是解決問題的一系列思維活動中的重要環(huán)節(jié)。本文中所探討的“建?!卑瑑蓚€步驟(見圖數(shù)據(jù)建立數(shù)學(xué)模型

算法設(shè)計建立計算模型圖2建模包含的兩個步驟首先將具體問題經(jīng)過抽象,明確變量和參數(shù),建立數(shù)學(xué)模型。在數(shù)學(xué)模型的基礎(chǔ)上通過程序設(shè)計表達(dá)出計算方法或過程,確立計算模型。22022年安徽省中小學(xué)教育教學(xué)論文評選本文選擇以O(shè)penCV維發(fā)展的作用。主要基于下列兩點(diǎn)原因:1) 的過程。2) Python語言能夠借助OpenCV庫輕松實(shí)現(xiàn)對圖像的仿射變換操作。便于學(xué)生驗(yàn)證解決問題過程中提出的計算模型,并將其遷移運(yùn)用于相似問題。質(zhì)的仿射變換,文章案例中使用的開發(fā)工具如圖3所示。圖3文章案例中使用的開發(fā)工具1. 生活中的仿射變換仿射變換是一種生活中常用的圖像幾何變換。舉個例子,有的玻璃窗外框是矩形的。在平行光平移、縮放、翻轉(zhuǎn)、旋轉(zhuǎn)等常見的幾何變換都是典型的仿射變換。圖4太陽光投射之下玻璃窗外框的影子32022年安徽省中小學(xué)教育教學(xué)論文評選準(zhǔn)確率,是基于計算機(jī)視覺系統(tǒng)解決道路交通標(biāo)志變形問題的良好方案。2.抽象數(shù)據(jù)特征——從圖像到矩陣新課標(biāo)從“提升數(shù)字勝任力,適應(yīng)數(shù)字經(jīng)濟(jì)挑戰(zhàn)[2]”的高度出發(fā),要求個體能用要訪問輸入圖像的內(nèi)容,OpenCV通過數(shù)值矩陣存儲圖像中每個像素的信息。以灰度圖255]中的整數(shù)數(shù)值表示圖像像素的256個灰度級中提供的“imread”方法可以輕松實(shí)現(xiàn)圖像的讀取和存儲。其語法格式[5]為:image=cv2.imread(filename,flags)表1imread方法參數(shù)說明參數(shù)名參數(shù)意義filename讀取圖像的文件名。flags讀取圖像的顏色類型標(biāo)記。當(dāng)flags的默認(rèn)值為1時,表示讀取的是彩色圖像;當(dāng)flags的值為0時,表示讀取的是灰度圖像。表1imread方法參數(shù)說明,返回值image代表讀取到的圖像。圖5展示了在JupyterNotebook中使用“imread”方法讀取“l(fā)otus.jpg”圖像,然后用“print”方法打印出圖像的全過程。程序運(yùn)行結(jié)果表明,OpenCV以矩陣的形式存儲和表達(dá)圖像。圖5OpenCV中圖像的存儲和表達(dá)方式42022年安徽省中小學(xué)教育教學(xué)論文評選標(biāo)志。3.構(gòu)建模型與編程實(shí)現(xiàn)用矩陣工具數(shù)字化表達(dá)圖像后,不難發(fā)現(xiàn),圖像中每個像素點(diǎn)的坐標(biāo)可由二維列向?表量?表èy?的映射關(guān)系是構(gòu)建模型的關(guān)鍵環(huán)節(jié)。由于仿射變換具有保持點(diǎn)的共線性及直線的平行性[6]的特征,這就啟發(fā)我們通過實(shí)?與數(shù)域上的二維列向量空間R2到自身的變換f來表示仿射變換。對于R2中向量v?與èy?? 之間的關(guān)系可由式坐標(biāo)變換后的像f(v)(2)確定。? 之間的關(guān)系可由式xyí ,xy10a22

(2)表達(dá)計算過程,完成算法設(shè)計。進(jìn)一步分析可知,當(dāng)(2)式中的和a23不為0時f12)1

f1)+f2即(2)所確定的變換f是非線性的這就意味著在二維平面上,?,R2中任意點(diǎn)?,èy??R y轉(zhuǎn)換為 3中的列向量??÷R y1?÷1è?ùêúê úy¢=a21y

(3)êúê ú0 0 1將式(3)抽象為分塊矩陣的形式:êú?

(4)ùù?式(4)中Ab13v

a22??

èy?52022年安徽省中小學(xué)教育教學(xué)論文評選?點(diǎn)的坐標(biāo)為?? èy?表明仿射變換的計算模型可借助一個矩陣乘法運(yùn)算精確表達(dá),由(2)式到(4)式的推演,就是數(shù)學(xué)模型轉(zhuǎn)變?yōu)橛嬎隳P偷倪^程。?vèy? è?以由一個線性變換(乘以一個矩陣)和一個平移(加上一個向量)復(fù)合而成[7]:將(5)式中的矩陣A和向量b拼接成仿射變換矩陣:

(5)a aùMb]=ê11 12 13ú

(6)

a22

a23?式(6)為描述仿射變換的重要參數(shù),從計算模型式(4)中提煉出仿射變換矩陣M,是引導(dǎo)學(xué)生完成算法設(shè)計,以及借助OpenCV庫編程實(shí)現(xiàn)圖像仿射變換的重要環(huán)節(jié)。圖6圖像的平移變換6所示,平移就是讓圖像中的所有像素同時沿著水平或垂直A為單位矩陣b

ùa

代表水平方向移動的距離,a

ú 13 13?像向左移動;a23代表垂直方向移動的距離,a23為正數(shù),圖像向下移動,若為負(fù)數(shù),圖像向上移動。0ù令平移的仿射變換矩陣Mú,若要將圖像水平向右移動50像素,且162022年安徽省中小學(xué)教育教學(xué)論文評選0 50ù垂直向下移動100像素,則相應(yīng)的仿射變換矩陣為M1 OpenCV仿射變換,其語法格式[5]為:dst=cv2.warpAffine(src,M,dsize,flags,borderMode,borderValue)表2warpAffine方法參數(shù)說明參數(shù)名參數(shù)意義src原始圖像的文件名M仿射變換矩陣MdsizeflagsborderModeborderValue0。表2warpAffine方法參數(shù)說明,返回值dst表示仿射變換后生成的圖像。圖7展示了在JupyterNotebook中使用“imread”方法讀取“l(fā)otus.jpg”圖像,并獲得“l(fā)otus.jpg”圖像的寬度、高度和通道數(shù)的過程。圖8展示了使用“warpAffine”方法實(shí)現(xiàn)圖像平移變換的詳細(xì)過程。圖7獲得“l(fā)otus.jpg”圖像寬度、高度和通道數(shù)的實(shí)現(xiàn)過程72022年安徽省中小學(xué)教育教學(xué)論文評選平移變換前 平移變換后圖8圖像平移變換的實(shí)現(xiàn)過程實(shí)現(xiàn)平移變換的JupyterNotebook源文件下載鏈接:/s/1UiZUVMLJJ_sWj798goO2RQ?pwd=v5xn4.遷移模型,拓展運(yùn)用82022年安徽省中小學(xué)教育教學(xué)論文評選情況來討論如何建模。對于二維平面上圖像的均勻縮放,直接將縮放因子k乘以單位矩陣I即可構(gòu)造出仿x軸方向的縮放因子kx和y軸方向的縮放因子ky的作用。兩類縮放的仿射變換矩陣差異見圖10。圖9圖像的縮放變換圖10均勻縮放與非均勻縮放的仿射變換矩陣的差異92022年安徽省中小學(xué)教育教學(xué)論文評選圖11展示了在JupyterNotebook中使用“warpAffine”方法實(shí)現(xiàn)圖像均勻縮放(寬和高都放大2倍)變換的詳細(xì)過程??s放變換前 均勻放大2倍后圖11圖像均勻縮放變換的實(shí)現(xiàn)過程實(shí)現(xiàn)縮放變換的JupyterNotebook源文件下載鏈接:/s/1m693L-FNguXn7cipEzsV_w?pwd=5qeq102022年安徽省中小學(xué)教育教學(xué)論文評選12二維平面上點(diǎn)(x0,y0)為中心,逆時針旋轉(zhuǎn)θ弧度的旋轉(zhuǎn)變換可以由兩次平移變換和一次繞原點(diǎn)旋轉(zhuǎn)變換復(fù)合而成。??按(-x0,-y0)進(jìn)行平移??繞原點(diǎn)逆時針旋轉(zhuǎn)θ弧度??按(x0,y0)進(jìn)行平移圖12以點(diǎn)(x0,y0)為中心逆時針旋轉(zhuǎn)θ弧度的流程通過對旋轉(zhuǎn)變換的模型分析,以點(diǎn)(x0,y0)為中心,逆時針旋轉(zhuǎn)θ弧度的仿射變換矩陣

-sinq

01-osq)0sinq

ù。顯然旋轉(zhuǎn)的仿射變換矩陣比平移、縮放Mú

cosq

y0cosq)-sinq?要復(fù)雜的多。為此OpenCV庫提供了“getRotationMatrix2D”方法用來自動計算圖像旋轉(zhuǎn)的仿射變換矩陣。其語法格式[5]為:M=cv2.getRotationMatrix2D(center,angle,scale)表3getRotationMatrix2D方法參數(shù)說明參數(shù)名參數(shù)意義center旋轉(zhuǎn)中心點(diǎn)的坐標(biāo)。anglescale縮放比例。如果取值1,表示圖像保持原來的比例。表3getRotationMatrix2DM為依據(jù)輸入信息計算出的仿射變換矩13描述了OpenCV14對比展示了以不同中心點(diǎn)進(jìn)行圖像旋轉(zhuǎn)變換的實(shí)現(xiàn)過程。述旋轉(zhuǎn)變換的參數(shù)——仿射變換矩陣M

“warpAffine”方法實(shí)現(xiàn)圖像的旋轉(zhuǎn)變換11 圖13OpenCV實(shí)現(xiàn)圖像旋轉(zhuǎn)變換的流程2022年安徽省中小學(xué)教育教學(xué)論文評選以圖像左下角為中心點(diǎn)逆時針旋轉(zhuǎn)30° 以圖像中心為中心點(diǎn)順時針旋轉(zhuǎn)30°圖14以不同中心點(diǎn)進(jìn)行圖像旋轉(zhuǎn)變換的實(shí)現(xiàn)過程實(shí)現(xiàn)旋轉(zhuǎn)變換的JupyterNotebook源文件下載鏈接:/s/1zu4NEpOnhAXVwpDFUYL2lg?pwd=wgx9122022年安徽省中小學(xué)教育教學(xué)論文評選三、結(jié)語解決方案的過程中,既要重視培養(yǎng)構(gòu)建模型將現(xiàn)實(shí)問題經(jīng)抽象以后形式化表達(dá)的能力,算思維的發(fā)展。參考文獻(xiàn)[1]中華人民共和國教育部.義務(wù)教育信息科技課程標(biāo)準(zhǔn)(2022年版)[Z].北京師范大學(xué)出版社.2022[2]熊璋,趙健,陸海豐,歐陽元新.義務(wù)教育階段信息科技課程的時代性與科學(xué)性——《義務(wù)教育信息科技課程標(biāo)準(zhǔn)(2022年版)》解讀[J].教師教育學(xué)報,2022,9(04):63-9.[3]王榮良.數(shù)學(xué)建模與編程教學(xué)融合的計算思維教育分析[J].中國信息技術(shù)教育,2022,(12):30-4.[4]陳棟.基于課程標(biāo)準(zhǔn)的計算思維教學(xué)實(shí)踐路徑[J].中國信息技術(shù)教育,2020,(Z4):65-8.[5]明日科技.PythonOpen

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論