




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2022年安徽省中小学教育教学论文评选浅谈计算思维教育中建模与编程的融合摘要:计算思维作为核心素养的要素之一,在教学实践中备受关注。文章以计算机视觉开源库OpenCV(OpensourceComputerVision)处理图像仿射变换为例,通过经历问题的抽象、建模、算法设计以及编程实现的全过程。分析建模与编程计算的融合对发展计算思维的重要作用,促进对计算思维培养的深层次思考。关键词:计算思维,数学模型,计算模型,编程,仿射变换引言:《义务教育信息科技课程标准(2022年版)》(以下简称“新课标”)中明确指出计算思维是课程要培养的核心素养之一。新课标作为课程的学习观与教学观的根本出发点,倡导探索“场景分析、原理认知、应用迁移[1]”的真实性学习。本文以计算思维教育中建模与编程的融合为OpenCV处理图像仿射变换的过程,探讨如何引导学生解决问题的过程中“建构模型、锻造思维、体验责任[2]”。一、建模与编程的融合对培养计算思维的作用计算思维作为问题解决过程中的思维活动,涉及抽象、分解、建模、算法设计等计算机科学领域的基本方法。程序设计(编程)则是将算法“翻译”成计算机能够执行的自动化到系统化的方法路径亲历问题解决的全过程[4](见图计算的形式化表达,并通过编程完成自动化实现,是问题解决全过程的关键环节。•从现实问题出发问题
数学模型•抽象•形式化
•模型化计算模型
编程计算•自动化
•系统化迁移运用图1培养计算思维的方法路径12022年安徽省中小学教育教学论文评选以求1+2+…+100的累加和为例,作为一个学习循环控制结构的典型例题,通常可分解为下列求解步骤:1) 分析累加求和的计算模型。设置变量si(i=循环产生累加对象。2) 施细节,最终编写程序完成累加和的计算。现算法的过程。再遇到类似的问题,完全可以迁移算法求解问题。其实对于1+2+…+ns=´n建立计算2问题,以及用程序语言实现自动化求解具有重要意义。分析上述教学案例可以发现,建构数学模型与编程完成自动化计算两者密不可分,建模与编程的融合对培养计算思维具有重要作用。二、建模与编程融合的案例分析计算思维的本质是一种问题解决的思维方式,建模是解决问题的一系列思维活动中的重要环节。本文中所探讨的“建模”包含两个步骤(见图数据建立数学模型
算法设计建立计算模型图2建模包含的两个步骤首先将具体问题经过抽象,明确变量和参数,建立数学模型。在数学模型的基础上通过程序设计表达出计算方法或过程,确立计算模型。22022年安徽省中小学教育教学论文评选本文选择以OpenCV维发展的作用。主要基于下列两点原因:1) 的过程。2) Python语言能够借助OpenCV库轻松实现对图像的仿射变换操作。便于学生验证解决问题过程中提出的计算模型,并将其迁移运用于相似问题。质的仿射变换,文章案例中使用的开发工具如图3所示。图3文章案例中使用的开发工具1. 生活中的仿射变换仿射变换是一种生活中常用的图像几何变换。举个例子,有的玻璃窗外框是矩形的。在平行光平移、缩放、翻转、旋转等常见的几何变换都是典型的仿射变换。图4太阳光投射之下玻璃窗外框的影子32022年安徽省中小学教育教学论文评选准确率,是基于计算机视觉系统解决道路交通标志变形问题的良好方案。2.抽象数据特征——从图像到矩阵新课标从“提升数字胜任力,适应数字经济挑战[2]”的高度出发,要求个体能用要访问输入图像的内容,OpenCV通过数值矩阵存储图像中每个像素的信息。以灰度图255]中的整数数值表示图像像素的256个灰度级中提供的“imread”方法可以轻松实现图像的读取和存储。其语法格式[5]为:image=cv2.imread(filename,flags)表1imread方法参数说明参数名参数意义filename读取图像的文件名。flags读取图像的颜色类型标记。当flags的默认值为1时,表示读取的是彩色图像;当flags的值为0时,表示读取的是灰度图像。表1imread方法参数说明,返回值image代表读取到的图像。图5展示了在JupyterNotebook中使用“imread”方法读取“lotus.jpg”图像,然后用“print”方法打印出图像的全过程。程序运行结果表明,OpenCV以矩阵的形式存储和表达图像。图5OpenCV中图像的存储和表达方式42022年安徽省中小学教育教学论文评选标志。3.构建模型与编程实现用矩阵工具数字化表达图像后,不难发现,图像中每个像素点的坐标可由二维列向ç表量ç表èyø的映射关系是构建模型的关键环节。由于仿射变换具有保持点的共线性及直线的平行性[6]的特征,这就启发我们通过实ç与数域上的二维列向量空间R2到自身的变换f来表示仿射变换。对于R2中向量vç与èyøç 之间的关系可由式坐标变换后的像f(v)(2)确定。ç 之间的关系可由式xyí ,xy¹0a22
(2)表达计算过程,完成算法设计。进一步分析可知,当(2)式中的和a23不为0时f12)¹
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)式的推演,就是数学模型转变为计算模型的过程。övèyø èø以由一个线性变换(乘以一个矩阵)和一个平移(加上一个向量)复合而成[7]:将(5)式中的矩阵A和向量b拼接成仿射变换矩阵:
(5)a aùMb]=ê11 12 13ú
(6)
a22
a23û式(6)为描述仿射变换的重要参数,从计算模型式(4)中提炼出仿射变换矩阵M,是引导学生完成算法设计,以及借助OpenCV库编程实现图像仿射变换的重要环节。图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”方法读取“lotus.jpg”图像,并获得“lotus.jpg”图像的宽度、高度和通道数的过程。图8展示了使用“warpAffine”方法实现图像平移变换的详细过程。图7获得“lotus.jpg”图像宽度、高度和通道数的实现过程72022年安徽省中小学教育教学论文评选平移变换前 平移变换后图8图像平移变换的实现过程实现平移变换的JupyterNotebook源文件下载链接:/s/1UiZUVMLJJ_sWj798goO2RQ?pwd=v5xn4.迁移模型,拓展运用82022年安徽省中小学教育教学论文评选情况来讨论如何建模。对于二维平面上图像的均匀缩放,直接将缩放因子k乘以单位矩阵I即可构造出仿x轴方向的缩放因子kx和y轴方向的缩放因子ky的作用。两类缩放的仿射变换矩阵差异见图10。图9图像的缩放变换图10均匀缩放与非均匀缩放的仿射变换矩阵的差异92022年安徽省中小学教育教学论文评选图11展示了在JupyterNotebook中使用“warpAffine”方法实现图像均匀缩放(宽和高都放大2倍)变换的详细过程。缩放变换前 均匀放大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年安徽省中小学教育教学论文评选三、结语解决方案的过程中,既要重视培养构建模型将现实问题经抽象以后形式化表达的能力,算思维的发展。参考文献[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. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中秋节活动策划幼儿园中秋方案(31篇)
- 2025店长年底个人总结(4篇)
- 公司负责人年终总结(3篇)
- 学生会干部辞职报告集合(19篇)
- 期末考试总结300字(20篇)
- 全国青岛版初中信息技术第五册第一单元第2课《颜色调整与蒙版》教学设计
- 事业单位竞聘演讲稿范文(6篇)
- 2025幼儿园教师培训感悟(20篇)
- 2025旗下演讲稿(15篇)
- 四季度工作计划范文(16篇)
- 社区便利店计划书
- 人工智能的风险与挑战
- 基层纪检委员培训课件
- 信息论与编码期末考试题(全套)
- 肺癌麻醉科教学查房
- 气体检测系统中英文对照外文翻译文献
- 死亡病例监测报告督导记录表
- 绿化自动滴灌系统施工方案
- 车站信号自动控制教案-TYJL-ADX型计算机联锁系统组成及功能
- 炉壁温度计算详解
- 绿色建筑验收自评报告全
评论
0/150
提交评论