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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

數學模型?抽象?形式化

?模型化計算模型

編程計算?自動化

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

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

(2)表達計算過程,完成算法設計。進一步分析可知,當(2)式中的和a23不為0時f12)1

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

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

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

a22??

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

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

(6)

a22

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

ùa

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

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

-sinq

01-osq)0sinq

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

cosq

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

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

溫馨提示

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

最新文檔

評論

0/150

提交評論