ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:489.09KB ,
资源ID:5026857      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5026857.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(边缘提取.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

边缘提取.docx

1、边缘提取数字图像处理报告学 院: 信息科学与电气工程 班 级: 学生姓名: 学 号: 指导老师: 张广渊 提交日期: 2014.05.05 课程实验报告实验题目:_边缘提取_姓名:_ _ 学号:_ _ 班级: _ _指导教师: _张广渊_实验概述【实验目的及要求】本次试验的目的为图像的边缘提取。【实验原理】通过VC+连接openCV显示图像。因为边缘和轮廓都位于灰度突变的地方。所以锐化算法的实现是基于微分作用。就是加强图像中景物的细节边缘和轮廓,使灰度反差增强。【实验环境】安装openCV首先,将E: OpenCVbin加入到环境变量PATH然后,配置VC+环境菜单Tools-Options-

2、Directories:选择include files,source filesLibrary files,在下方填入路径建立新工程后,在工程设置里添加路径 cxcore.lib cv.lib ml.lib cvaux.lib highgui.lib cvcam.lib实验内容【实验过程】(实验步骤、记录、数据、分析)视频边缘提取代码如下/*程序名称:laplace.c功能:从摄像头或者AVI文件中得到视频流,对视频流进行边缘检测,并输出结果。*/#include cv.h#include highgui.h#include #include int main( int argc, char*

3、 argv ) IplImage* laplace = 0; IplImage* colorlaplace = 0; IplImage* planes3 = 0, 0, 0 ; / 多个图像面 CvCapture* capture = 0; / 下面的语句说明在命令行执行程序时,如果指定AVI文件,那么处理从 / AVI文件读取的视频流,如果不指定输入变量,那么处理从摄像头获取 / 的视频流if( argc = 1 | (argc = 2 & strlen(argv1) = 1 & isdigit(argv10) capture = cvCaptureFromCAM( argc = 2 ? a

4、rgv10 - 0 : 0 ); else if( argc = 2 ) capture = cvCaptureFromAVI( argv1 ); if( !capture ) fprintf(stderr,Could not initialize capturing.n); return -1; cvNamedWindow( Laplacian, 0 ); / 循环捕捉,直到用户按键跳出循环体 for(;) IplImage* frame = 0; int i; frame = cvQueryFrame( capture ); if( !frame ) break; if( !laplace

5、 ) for( i = 0; i width,frame-height), 8, 1 );laplace = cvCreateImage( cvSize(frame-width,frame-height), IPL_DEPTH_16S, 1 ); colorlaplace = cvCreateImage( cvSize(frame-width,frame-height), 8, 3 ); cvCvtPixToPlane( frame, planes0, planes1, planes2, 0 ); for( i = 0; i origin = frame-origin; cvShowImage

6、(Laplacian, colorlaplace ); if( cvWaitKey(10) = 0 ) break; cvReleaseCapture( &capture ); cvDestroyWindow(Laplacian); return 0;Canny获取边缘的代码:#include cv.h#include highgui.hchar wndname = Edge;char tbarname = Threshold;int edge_thresh = 1;IplImage *image = 0, *cedge = 0, *gray = 0, *edge = 0;/ 定义跟踪条的 c

7、allback 函数void on_trackbar(int h) cvSmooth( gray, edge, CV_BLUR, 3, 3, 0 ); cvNot( gray, edge ); / 对灰度图像进行边缘检测 cvCanny(gray, edge, (float)edge_thresh, (float)edge_thresh*3, 3); cvZero( cedge ); / copy edge points cvCopy( image, cedge, edge ); / 显示图像 cvShowImage(wndname, cedge);int main( int argc, ch

8、ar* argv ) char* filename = argc = 2 ? argv1 : (char*)fruits.jpg; if( (image = cvLoadImage( filename, 1) = 0 ) return -1; / Create the output image cedge = cvCreateImage(cvSize(image-width,image-height), IPL_DEPTH_8U, 3); / 将彩色图像转换为灰度图像 gray = cvCreateImage(cvSize(image-width,image-height), IPL_DEPT

9、H_8U, 1); edge = cvCreateImage(cvSize(image-width,image-height), IPL_DEPTH_8U, 1); cvCvtColor(image, gray, CV_BGR2GRAY); / Create a window cvNamedWindow(wndname, 1); / create a toolbar cvCreateTrackbar(tbarname, wndname, &edge_thresh, 100, on_trackbar); / Show the image on_trackbar(0); / Wait for a

10、key stroke; the same function arranges events processing cvWaitKey(0); cvReleaseImage(&image); cvReleaseImage(&gray); cvReleaseImage(&edge); cvDestroyWindow(wndname); return 0;实验结果:视频边缘提取结果如图:Canny获取边缘如图:小结通过本次试验,我学会了边缘提取原理。通过这个原理实践了对视频和图像的边缘提取。对于代码还是没有完全看懂。但边缘提取的原理已经明白了。还需要根据老师的讲解理解一下代码。指导教师评语及成绩评语:成绩: 指导教师签名: 批阅日期:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1