个人毕业设计基于python开发的图像论文内容摘要:

有效图片 无效图片抛弃 红点数目是否大于 70 判断图像中红点数目 通过摄像头采集图片 遍历该图片中每个坐标点 开始 N Y 位移的正负 有效动作, ppt 动作 开始 找到有效图片中所有红点坐标的中心坐标 对比两张最近的有效图片中心坐标 得到两次对比的位 移大小 位移大小是否大于 5cm 无效动作, ppt 不动作 N Y 左翻页 右翻页 负 正 5 图 32实现的是对有效图片进行分析,通过判断最近两张有效图片的中心位置点的位置关系来决定 ppt是否执行动作,执行动作时是左翻页还是右翻页等一系列功能。 完成这一步所需的程序如下: if len(list2)20: 如果列表中坐标个数大于 20 个 if len(list2) 20: tn3=list2[1][0]list2[0][0] 将横坐标的长度赋值给 tn3 tn4=list2[1][1]list2[0][1] 将纵坐标的长度赋值给 tn4 while len(list2)3: (0) print 39。 ..........................39。 ,tn3 print tn4 if tn450 and tn350 and tn350: (39。 ./ 7139。 ) if tn450 and tn350 and tn350: (39。 ./ 939。 ) if tn3100: (39。 ./ 11439。 ) print 39。 [right]39。 () if tn3100: (39。 ./ 11339。 ) print 39。 [left]39。 () 每次判断完一张图片后,就把列表中的红点数目与坐标等都删除。 这样就不会对下一张图片造成影响。 编程 在开始编程之前要先确定编程工具,本设计用的是 vim编辑器。 这个编辑器的最大优势就是,在意外情况下可以自动保存代码。 当代码错误时,会提示错误信息,能够及时进行修改。 以下是本设计的部分代码: !/usr/bin/python 这是解释 python 语言在电脑中的位置 * coding: UTF8 * 这是 python 脚本中的中文解释器 6 opencv 模块 import opencv 从外部引入 opencv 模块 本设计用到的 opencv 代码如下: cam=(0) 定义摄像头端口位置 tn1=(im) 采集到的图像定义为 tn1 OpenCV 的全称是 Open Source Computer Vision Library,是一个跨平台的 计算机视觉 库。 OpenCV 是由 英特尔公司 发起并参与开发,以 BSD许可证 授权发行,可以在商业和研究领域中免费使用。 OpenCV 可用于开发对实时的 图像处理 、 计算机视觉 以及 模式识别 程序。 OpenCV 用 C++语言编写,它的主要接口也是 C++语言,但是依然保留了大量的 C 语言 接口。 该库也有大量的 Python, Java and MATLAB/OCTAVE 的接口。 这些语言的 API 接口函 数可以通过在线文档获得。 现在也提供对于 C,Ch,Ruby 的支持。 安装 Opencv 所需的依赖工具: cmake, gtk+*, ffmpeg*, gstreamer* 编译安装: $ cd $DIR $ mkdir release $ cmake D CMAKE_BUILD_TYPE=RELEASE D CMAKE_INSTALL_PREFIX=/usr/local D BUILD_PYTHON_SUPPORT=ON .. $ make j $ make install highgui 模块 from opencv import highgui 从 opencv 图形处理模块中引入 highgui 模块。 HighHGUI 只是用来建立快速软件原形或是试验用的。 它的设计意图是为用户提供简单易用的图形用户接口。 本设计用到的 highgui 模块如下: im=(cam);这里 highgui 用来采集图像 OpenCV 为了用于生产级别的应用而设计的。 HighHGUI 只是用来建立快速软件原形或是试 验用的。 它的设计意图是为用户提供简单易用的图形用户接口。 通常,你需要读入源图像到你的程序或者输出结果图像到磁盘。 此外,需要用简单的方法显示图像到监视器并 7 且向用户提供输入 .如果你试图创建最终用户的应用,请不要使用 HighGUI。 相对来说,应当为你的目标系统参考特定的函数库。 比如: HighGUI 中的摄像头输入方法( cvCreateCameraCapture)是为了易用而设计的。 然而,并不意味着它能够对热插拔作出反应等等 [2]。 image 模块 import Image 引入图像模块 ,对采 集到的图像进行处理 本设计用到的 image 模块代码 : tn1=((160,160)) 重新设置采集到的图像的大小 size1= 将重新设置的图像的大小值定义位 size1 pbb=() 载入图像 PythonWare 公司提供了免费的图像处理工具包 PIL(Python Image Library),该软件包提供了基本的图像处理 功能,如:改变图像大小,旋转图像,图像格式转换,色场空间转换,图像增强,直方图处理,插值和滤波等 等。 虽然在这个软件包上要实现类似 MATLAB 中的复杂的图像处理算法并不太适合,但是 Python 的快速开发能力以及面向对象等等诸多特点使得它非常适 合用来进行原型开发。 在 PIL 中,任何一副图像都是用一个 Image 对象表示,而这个类由和它同名的模块导出,因此,要加载一副图像,最简单的形式是这样的:import Image img = (“”) 注意:第一行的 Image 是模块名; 第二行的 img是一个 Image 对象; Image 类是在 Image模块中定义的。 关于 Image 模块和 Image 类,切记不要混淆了。 现在,我们就可以对 img进行各种 操作了,所有对 img 的 操作最终都会反映到到 图像上。 这个模块提供了一个常用的图像增强工具箱。 可以用来进行色彩增强、图像叠加、改变图像大小、亮度增强、对比度增强、图像尖锐化等等增强操作。 所有操作都有相同形式的接口 ——通过相 应类的 enhance 方法实现:色彩增强通过 Color 类的 enhance 方法实现;亮度增强通过Brightness 类的 enhance 方法实现;对比度增强通过 Contrast 类的 enhance 方法实现;尖锐化通过 Sharpness 类的 enhance 方法实现。 所有的操作都需要向类的 构造函数传递 一个Image 对象作为参数,这个参数定义了增强作用的对象。 同时所有的操作都返回一个新的Image 对象。 如果传给 enhance 方法的参数是 , 则不对原。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。