版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验概述【实验目的及要求】图像分割【实验原理】 图像分割 【实验环境】Visual C+ 6.0 Xvid实验内容【实验方案设计】 先根据要求查询资料 通过上网查到需要的信息 然后整合做出计划性的步骤 【实验过程】Contour:Houghcircles:Houghlines:3. 源程序Contour:#include "cv.h"#include "highgui.h"int main( int argc, char* argv ) IplImage* src; / 第一条命令行参数确定
2、了图像的文件名。 if( argc = 2 && (src=cvLoadImage(argv1, 0)!= 0) IplImage* dst = cvCreateImage( cvGetSize(src), 8, 3 ); CvMemStorage* storage = cvCreateMemStorage(0); CvSeq* contour = 0; cvThreshold( src, src, 1, 255, CV_THRESH_BINARY ); cvNamedWindow( "Source", 1 ); cvShowImage( "Sou
3、rce", src ); cvFindContours( src, storage, &contour, sizeof(CvContour), CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE ); cvZero( dst ); for( ; contour != 0; contour = contour->h_next ) CvScalar color = CV_RGB( rand()&255, rand()&255, rand()&255 ); /* 用1替代 CV_FILLED 所指示的轮廓外形 */ / cvDr
4、awContours( dst, contour, color, color, -1, CV_FILLED, 8 ); cvDrawContours( dst, contour, color, color, -1, 1, 8 ); cvNamedWindow( "Components", 1 ); cvShowImage( "Components", dst ); cvWaitKey(0); Houghcircles:#include <cv.h>#include <highgui.h>#include <math.h>
5、;int main(int argc, char* argv) IplImage* img; if( argc = 2 && (img=cvLoadImage(argv1, 1)!= 0) IplImage* gray = cvCreateImage( cvGetSize(img), 8, 1 ); CvMemStorage* storage = cvCreateMemStorage(0); cvCvtColor( img, gray, CV_BGR2GRAY ); cvSmooth( gray, gray, CV_GAUSSIAN, 9, 9 ); / smooth it,
6、otherwise a lot of false circles may be detected CvSeq* circles = cvHoughCircles( gray, storage, CV_HOUGH_GRADIENT, 2, gray->height/4, 200, 100 ); int i; for( i = 0; i < circles->total; i+ ) float* p = (float*)cvGetSeqElem( circles, i ); cvCircle( img, cvPoint(cvRound(p0),cvRound(p1), 3, CV
7、_RGB(0,255,0), -1, 8, 0 ); cvCircle( img, cvPoint(cvRound(p0),cvRound(p1), cvRound(p2), CV_RGB(255,0,0), 3, 8, 0 ); cvNamedWindow( "circles", 1 ); cvShowImage( "circles", img ); cvWaitKey(0); return 0;Houghlines:/* 这是一个命令行程序,以图像作为文件输入变量 编译时选择“#if 1”或“#if 0”,可以使用标准和概率HOUGH变换两种方法 *
8、/#include <cv.h>#include <highgui.h>#include <math.h>int main(int argc, char* argv) IplImage* src; if( argc = 2 && (src=cvLoadImage(argv1, 0)!= 0) IplImage* dst = cvCreateImage( cvGetSize(src), 8, 1 ); IplImage* color_dst = cvCreateImage( cvGetSize(src), 8, 3 ); CvMemStorag
9、e* storage = cvCreateMemStorage(0); CvSeq* lines = 0; int i; cvCanny( src, dst, 50, 200, 3 ); cvCvtColor( dst, color_dst, CV_GRAY2BGR );#if 1 lines = cvHoughLines2( dst, storage, CV_HOUGH_STANDARD, 1, CV_PI/180, 150, 0, 0 ); for( i = 0; i < lines->total; i+ ) float* line = (float*)cvGetSeqElem
10、(lines,i); float rho = line0; float theta = line1; CvPoint pt1, pt2; double a = cos(theta), b = sin(theta); if( fabs(a) < 0.001 ) pt1.x = pt2.x = cvRound(rho); pt1.y = 0; pt2.y = color_dst->height; else if( fabs(b) < 0.001 ) pt1.y = pt2.y = cvRound(rho); pt1.x = 0; pt2.x = color_dst->wid
11、th; else pt1.x = 0; pt1.y = cvRound(rho/b); pt2.x = cvRound(rho/a); pt2.y = 0; cvLine( color_dst, pt1, pt2, CV_RGB(255,0,0), 1, 8 ); #else lines = cvHoughLines2( dst, storage, CV_HOUGH_PROBABILISTIC, 1, CV_PI/180, 280, 30, 10 ); for( i = 0; i < lines->total; i+ ) CvPoint* line = (CvPoint*)cvGe
12、tSeqElem(lines,i); cvLine( color_dst, line0, line1, CV_RGB(255,0,0), 1, 8,0 ); #endif cvNamedWindow( "Source", 1 ); cvShowImage( "Source", src ); cvNamedWindow( "Hough", 1 ); cvShowImage( "Hough", color_dst ); cvWaitKey(0); 【结果】1 编写程序Contour:Houghcircles:Hough
13、lines:2 图片Contour:Houghcircles:Houghlines:小结图像分割图像分割是图像处理这门学科中的基础难题,,图像分割是图像处理领域和计算机视觉中的基本而关键的问题。其目的就是将人们感兴趣的目标从图像背景中提取出来,为后续的分类、跟踪、识别、处理等提供基础。由于图像分割的重要性,对图像研究就显得格外重要。指导教师评语及成绩评语: 成绩: 指导教师签名:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CES 255-2023架空输电线路智能运检应用成熟度评价导则
- T/GDAEPI 07-2022广东省环保管家服务规范
- DB31/T 1632-2025IPv6行业部署及应用技术要求
- T/CADP 18-2025通用工程机械救援指挥训练指南
- T/CAAMTB 40-2021 T/CECA-G 0124-2021“领跑者”标准评价要求 燃料电池城市客车
- DB31/T 1688-2026建筑类不可移动革命文物维护管理要求
- DB32/T 5241-2025根茎类蔬菜热风干制技术规程
- 消毒供应中心年度工作计划(2026版)
- 新建年产20kg生物细胞微载体研发与生产项目环境影响报告表
- 《机器学习Python实战》电子教案 07-1-项目5 逻辑回归算法实战
- 2026年全国高中数学联合竞赛一试(A卷)试卷及参考答案
- 2026年广东省公务员考试(行政执法专业和申论)综合练习题及答案
- JL树木伐移项目监理规划
- 2026年护理安全警示教育培训课件
- 初中数学九年级上册《利用相似三角形原理测量高度》跨学科项目式教学设计
- 人教版数学一年级上册 10的认识 课件
- 世界青少年奥林匹克数学YMO历届真题集(六年级决赛)(含答案)
- DB61∕T 5136-2025 岩棉外墙外保温系统应用技术规程
- 锅炉规范使用管理制度
- 青岛啤酒行政专员招聘面试题
- (12)普通高中技术与工程课程标准日常修订版(2017年版2025年修订)
评论
0/150
提交评论