


已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国家级大学生创新训练项目中期进展报告项目编号: 201310611072 项目名称: 视频监控中的火灾检测报警系统研究 项目负责人: 单嘉琦 学院年级专业: 通信工程11级电子信息工程 联系电话:目组成员: 雷 博 唐圆圆指导教师: 印 勇 教务处制填表日期:2013年12月6日 填写说明一、中期进展报告要按照重庆大学“国家级大学生创新训练项目”管理办法的相关要求,逐项认真填写,填写内容必须实事求是,表达明确严谨。空缺项要填“无”。二、格式要求:需签字部分由相关人员以黑色钢笔或水笔签名。均用A4纸双面打印,于左侧装订成册。三、报告书填写内容应言简意赅,思路清晰,论证充分,字迹清楚,一律用计算机输入打印。一、项目组成员工作情况项目组成员姓名项目中的分工完成情况指导教师评价指导教师签名单嘉琦火焰颜色算法设计完成唐圆圆OPENCV编程实现完成雷 博MFC界面设计完成二、项目研究进展情况说明第一阶段:2013.072013.9进一步细化研究项目的设计流程,明确小组成员的分工。熟练掌握OpenCV软件的应用,熟练掌握其丰富的视频图像处理算法,并能够理解及分析其处理结果。在学习Opencv软件中,主要有以下几个过程:1)熟悉OpenCV软件的库函数并掌握其使用方法。主要的库函数有highgui.h 、cxcore.h、cv.h和ml.h库函数。2)学习并掌握在OpenCV软件编程环境中创建图片窗口,基于视屏图片处理算法编写程序实现从计算机磁盘中读取图片并显示在图片窗口中。理解在OpenCV软件平台上处理图像的基本方式,通过参数设置能够控制图片显示为彩色、黑白等各种标准。3)学习基于MFC基础的程序,为设计人性化的显示界面打下基础。第二阶段 2013.102013.12小组成员开始基于火灾的各种特征设计相应的算法,并运用OpenCV软件实现成员的设想。针对火焰的颜色模块儿,小组成员提出了基于RGB三色模型的算法。在正确实现算法的基础上,小组成员设计MFC窗口,实现运行程序能在该窗口下显示加载的图片。基于算法实现对有火焰的视屏进行处理,观察视频运算的结果。当视屏中有火焰时,视屏会会立即中断播放来代替报警。主要过程如下:1)用RGB三色模型都火焰颜色进行分析。学习各种资料,理解RGB模型下各种颜色的数值表示。根据实验项目中对火焰颜色的要求,确定火焰颜色的RGB数值波动范围,写出相应的限制条件。2)根据小组成员设计的算法编写OpenCV程序,运用代码实现限制条件的设置。运行程序对案例图片进行处理,主要效果是将有火焰的区域全变成RGB模型下的“0”,即黑色;没有火焰部分变成白色。对比处理前后颜色观察处理后的到的效果。在此基础上优化程序,实现单张包含火焰的图片的处理。3)基于2)中的程序在MFC中实现代码的正常运行,并在MFC窗口加载处理前后的图片。4)基于对单张火焰图片处理的程序,编写程序实现在OpenCV平台上连续对视频中的每一帧图片进行火焰识别。当在视频中发现火焰并持续较短时间,视频马上暂停,以此代替报警。三、已取得的阶段性成果(条文列述,可附照片)一、设计RGB通道和YCrCb通道下火焰颜色模型:(1)在三维通道下根据三通道参数的约束关系确定火焰颜色的范围,简要列出两种通道下主要约束条件表达式如下:(2)根据算法设计对图像逐点扫描,并将满足约束条件部分二值化为黑色,其余部分设为白色的程序,附上程序如下:2.1 RGB通道下程序: void sv(IplImage* img)for(int y=0;yheight;y+)uchar* ptr=(uchar*)(img-imageData+y*img-widthStep);for( int x=0;xwidth;x+)if (ptr3*x/3+ptr3*x+1/3+ptr3*x+2/3100&ptr3*x/-3+ptr3*x+1/-3+ptr3*x+2/-3-200&ptr3*x/2-ptr3*x+2/-215&ptr3*x/-2-ptr3*x+2/-2-120) %实现约束条件 ptr3*x=ptr3*x+1=ptr3*x+2=0;else ptr3*x=ptr3*x+1=ptr3*x+2=255;2.2 YCrCb通道下程序:#include cv.h #include highgui.h #include #include #include int main(int argc,char* argv)IplImage *image=0,*img=0, *yuv=0;int i,j;int height,width,step,channels; uchar* data;CvMat* pFrMat=NULL;CvScalar scalar1; int VECT=0;char* filename=argc=2?argv1:(char*)fire2.jpg;image=cvLoadImage(filename,-1);if(!image) printf(Could not load image filen);yuv=cvCreateImage(cvGetSize(image),8,3);img=cvCreateImage(cvGetSize(image),8,3);cvNamedWindow(SourceImage,CV_WINDOW_AUTOSIZE);cvNamedWindow(ResultImage,CV_WINDOW_AUTOSIZE);cvShowImage(SourceImage,image);cvCvtColor(image,yuv,CV_BGR2YCrCb);height = yuv-height;width = yuv-width;step = yuv-widthStep;channels = yuv-nChannels;data = (uchar *)yuv-imageData;printf(Processing a %dx%d image with %d channelsn, height, width, channels);IplImage *plane0=0,*plane1=0,*plane2=0;plane0=cvCreateImage(cvGetSize(image),8,1);plane1=cvCreateImage(cvGetSize(image),8,1);plane2=cvCreateImage(cvGetSize(image),8,1);cvCvtPixToPlane(yuv,plane0,plane1,plane2,0);cvNamedWindow(Image0,CV_WINDOW_AUTOSIZE);cvNamedWindow(Image1,CV_WINDOW_AUTOSIZE);cvNamedWindow(Image2,CV_WINDOW_AUTOSIZE);cvShowImage(Image0,plane0);cvShowImage(Image1,plane1);cvShowImage(Image2,plane2); cvWaitKey();cvDestroyWindow(Image0);cvDestroyWindow(Image1);cvDestroyWindow(Image2); for(i=0;iheight;i+) for(j=0;jdatai*step+j*channels+2&datai*step+j*channels+0scalar1.val0&datai*step+j*channels+1datai*step+j*channels+2&datai*step+j*channels+1scalar1.val1&datai*step+j*channels+2VECT) if(data0data2 & data0scalar1.val0 & data1data2 & data1scalar1.val1 & data2VECT)img-imageDatai*img-widthStep+j*img-nChannels+0=255;img-imageDatai*img-widthStep+j*img-nChannels+1=255;img-imageDatai*img-widthStep+j*img-nChannels+2=255;elseimg-imageDatai*img-widthStep+j*img-nChannels+0=0;img-imageDatai*img-widthStep+j*img-nChannels+1=0;img-imageDatai*img-widthStep+j*img-nChannels+2=0;cvShowImage(ResultImage,img); cvWaitKey();cvDestroyWindow(SourceImage);cvDestroyWindow(ResultImage);二、利用MFC设计界面友好的工程现在主要实现了在MFC下加载图像,用按键控制图像处理。其结果如下:三、收集火焰图像、视频素材,对设计算法验证部分实验图像和结果如下:四、初步提出对视频火焰监控算法思想检验若连续N帧图像一定面积图像符合火焰颜色模型,则判定发生火焰,中断视频播放(用中断视频来代替响铃)代码如下:#include highgui.hint sv(IplImage* img)int a,c=0,d=0;for(int y=0;yheight;y+)uchar* ptr=(uchar*)(img-imageData+y*img-widthStep);for( int x=0;xwidth;x+)if (ptr3*x/3+ptr3*x+1/3+ptr3*x+2/3100&ptr3*x/-3+ptr3*x+1/-3+ptr3*x+2/-3-200&ptr3*x/2-ptr3*x+2/-215&ptr3*x/-2-ptr3*x+2/-2-120)a=0; c+=1;else a=1;if(c=100)d=0;return d;int main(int argc, char* argv)int b,f=0;cvNamedWindow(avi);CvCapture* capture = cvCreateFileCapture(E:b.avi);IplImage* frame;while(1)frame = cvQueryFrame(capture);b=sv(frame);if(b=0) f+=1; if(f=50)break;cvShowImage(avi,frame);char c = cvWaitKey(33);if(c=27)break;cvReleaseCapture(&capture);cvDestroyWindow(avi);return 0;五、对OPENCV常用算法进行归纳,建立自己的函数库由于代码段过多,故不再一一附上,仅附上文件夹目录的图片:四、项目日常运作情况(项目的组织管理,成员的合作和工作日志的填写等) 在我们项目确定立项之后,为了我们项目能够如期完成,我们针对每个人的情况,制定我们的计划。首先,由于我们小组三个人来自两个专业,所选的专业课不一样,但是周末大家一般没有课,而且我们都是在学院的电子信息实验班学习,大部分课程都是在一起,所以我们制定计划如下:1、 每天一起上课的课余时间交流学习过程中遇到的问题,进行初步的讨论。2、 每周周末组织组员进行例会,详细交流这一周的学习心得,讨论解决遇到的难题,并且制定下一周我们的学习计划,并填写工作日志。时间:周末(三个人的公共空余时间)地点:图书馆创新实践中心和实验班开放实验室3、 坚持每个月至少和导师交流一次,在其他时间遇到难以解决的问题也尽快与导师交流,并及时向导师汇报项目的进展情况。 针对我们项目需要,我们对三个人的工作进行了分工,具体分工如下:小组成员前期项目分工单嘉琦火焰颜色算法的设计唐圆圆OPENCV编程实现雷博MFC界面设计虽然每个人都有分工,但是这个只是代表大家的工作重心,没有明确的限定,遇到问题的时候还是大家一起讨论解决,相互合作。五、经费使用情况1 买书费用: 121元六、目前存在问题及解决方案问题1:火焰颜色模型不够精确,存在局限性解决方案:通过调试参数和约束条件进一步优化现有模型;在HSV等其他色彩空间下对火焰颜色进行描述。问题2:程序语言冗长,不够准确解决方案:进一步学习OPENCV语句的应用和C语言的编写技巧;优化精简代码问题3:对图像预处理方案的选取解决方案:目前在对图像和直接获取的视
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新风貌入团考试试题及答案
- 一级建造师考试丰富资料试题及答案
- 2025年团组织构建的路径及试题答案研究
- 2025物理大一轮复习讲义复习讲义答案精析
- 医疗人才培养计划组委会的未来展望与挑战
- 医疗AI技术发展与伦理框架的同步建设
- 借鉴国外护理模式提升中国护理服务的研究试题及答案
- 吉林全国计算机四级题库单选题100道及答案
- 医疗大数据与健康信息学的交叉应用
- 核心素养 民用航空器维修试题及答案
- 提高住院患者抗菌药物治疗前送检率培训
- 交通疏解方案完整版
- 美世-岗位管理
- 京东考试答案
- 跨越架施工方案
- 古书院矿1.2Mt新井设计(机械CAD图纸)
- 财产和行为税纳税申报表
- 人民币全版(钱币)教学打印版word版
- 人员能力矩阵图
- 多智能体系统教材课件汇总完整版ppt全套课件最全教学教程整本书电子教案全书教案课件合集
- 购物中心租金修正测算
评论
0/150
提交评论