基于目标识别的计价系统(科技文化节论文) .doc

基于目标识别的计价系统(科技文化节论文) .doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于目标识别的计价系统(科技文化节论文) .doc

基于目标识别的计价系统 李水源 指导老师:陈志翔 (漳州师范学院计算机科学与技术系,福建漳州 363000) 摘要:现今诸多公司高校餐厅计价系统依旧采用人工结算人工打卡,进程缓慢且出错率较高。为了在诸如下班下课的高峰期有效改善结账效率与准确率,本文提出一种基于目标识别的计价系统。该系统利用VC++6.0架构为框架,以Intel公司的开源项目OpenCV计算机视觉库为核心。系统主要使用的算法有:图像处理部分——图像的灰度化,图像的二值化,平滑滤波;图像识别部分——Canny边缘检测,霍夫圆变换;计算部分:概率投票策略。系统主要功能:使用普通USB摄像头,采集餐盘图像作为输入,检测出当前餐盘半径。通过用户对于规定餐盘半径以及对应价格的输入计算相应价格,然后输出到屏幕。 关键词: OpenCV;计算机视觉;VC++6.0; 1.项目背景及意义 人类正在进入信息时代,计算机将越来越广泛地进入几乎所有领域。一方面是更多未经计算机专业训练的人也需要应用计算机,而另一方面是计算机的功能越来越强,使用方法越来越复杂。这就使人在进行交谈和通讯时的灵活性与目前在使用计算机时所要求的严格和死板之间产生了尖锐的矛盾。人可通过视觉和听觉,语言与外界交换信息,并且可用不同的方式表示相同的含义,而目前的计算机却要求严格按照各种程序语言来编写程序,只有这样计算机才能运行。为使更多的人能使用复杂的计算机,必须改变过去的那种让人来适应计算机,来死记硬背计算机的使用规则的情况。而是反过来让计算机来适应人的习惯和要求,以人所习惯的方式与人进行信息交换,也就是让计算机具有视觉、听觉和说话等能力。 智能计算机不但使计算机更便于为人们所使用,同时如果用这样的计算机来控制各种自动化装置,就可以使这些自动化系统和智能机器人具有适应环境,和自主作出决策的能力。这就可以在各种场合取代人的繁重工作,或代替人到各种危险和恶劣环境中完成任务。对用户在时候通常需要注意的地方和遇到的问题进行分析和归纳本软件所实现的功能模块需求如图3-1所示: 图-1 功能需求分析图该模块的作用是:当用户按下使用说明按钮的时候,出现一个对话框模式的界面,对该软件的主要功能进行简要介绍,以及如何使用该软件。该功能通过CSMART_COUNTERViewOnMenudes()菜单响应函数和对话框来实现。该模块的作用是:当用户按下—规格与价格”按钮的时候,出现一个对话框模式的界面,。该功能通过CSMART_COUNTERViewOnMenuSet()菜单响应函数和对话框来实现。该模块的作用是:当用户按下—餐盘检测”按钮的时候,。该功能通过1.cvCaptureFromCAM(); //打开本机摄像头 2.cvCreateMemStorage(); //申请内存数组 3. cvNamedWindow();//创建图像显示对话框 4. cvCreateImage();//分配内存给一幅新图像 5. cvCreateMat();//创建矩阵 6. cvCvtColor();//彩图转灰度图 .cvSmooth(); //平滑滤波 . cvHoughCircles(); //霍夫圆变换 . cvCircle(); //画圆函数 1.cvReleaseImage(); //释放图像内存 1.cvReleaseMat(); //释放矩阵 1.cvReleaseCapture(); //释放摄像头该模块的作用是:当的时候,IDD_MessageDlg,显示总价格。 3.详细设计对于彩色转灰度,有一个很著名的心理学Gray = R*0.299 + G*0.587 + B*0.114 采用系数缩放的方法可以避免大量浮点运算,加快运算速度。所以实际应用时需要整数算法。cvCvtColor(cimg,gimg,CV_BGR2GRAY); 参数说明:cimg 原图指针 Gimg 目标图指针 CV_BGR2GRAY 转换方式为彩图转灰度图 3.1.2 图像的二值化 理论: 图像二值化是提取轮廓的前提 算法思路: 1.从灰度图指针得到改点成灰度值 2.按照给定的阀值判断改点灰度是否大于它,如果比阀值大,取255,反之取0 3.将该点的新颜色(255或0)输出到图像上 阀值的选取一般用127,也可以按照颜色统计来进行。就是将整幅图片的所有点的灰度累加起来再除以总的点数,除下来的商作为一个阀值。缺点是必须对整张图片扫描两次,速度比较慢。 OpenCV实现: 调用函数 cvThreshold( const CvArr* src, CvArr* dst, double threshold,int threshold_type ); 参

文档评论(0)

eorihgvj512 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档