激光光斑中心位置及大小的确定Matlab

上传人:沈*** 文档编号:101826578 上传时间:2022-06-05 格式:DOC 页数:11 大小:74.50KB
返回 下载 相关 举报
激光光斑中心位置及大小的确定Matlab_第1页
第1页 / 共11页
激光光斑中心位置及大小的确定Matlab_第2页
第2页 / 共11页
激光光斑中心位置及大小的确定Matlab_第3页
第3页 / 共11页
点击查看更多>>
资源描述
-燕山大学课 程 设 计 说 明 书题目:20 目标位置及大小确实定学院系:电气工程学院年级专业: 09级仪表三班学 号:学生:指导教师:林洪彬 王志彬教师职称:讲师 副教授燕山大学课程设计论文任务书院系:电气工程学院 基层教学单位: 自动化仪表系学 号学生专业班级09级仪表三班设计题目20 目标位置及大小确实定 设计技术参数 几句图像处理的知识,确定图像中两点的中心点的位置,并能确定其大小即半径,尽量使用较多的方法实现,并且比较每种方法的处理速度。设计要求 实际确定图像中两点的中心点的位置,并且确定该两点的半径。实际中应具有自己的实际思想、设计体会。 工作量了解Matlab的根本操作,查找与课程设计相关的资料,编写程序并调试,写论文,准备课程设计辩论。工作计划12月19日,熟悉Matlab的根本操作12月20日,查找与课程设计课题相关的资料12月21日,设计程序并调试12月22日,调试程序并写论文12月23日,整理论文,课程设计辩论参考资料1、 数字图像处理学 电子公告也 贾永红 20032、 数字图像处理Matlab版 电子工业 冈萨雷斯 20063、 其他数字图像处理和matlab变成发面的书记及相关学习资料指导教师签字林洪彬 王志斌基层教学单位主任签字平说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。2011年12 月 23 日 燕山大学课程设计评审意见表指导教师评语:成绩: 指导教师: 2011年 12月 23 日辩论小组评语: 成绩: 评阅人: 2011年 12月 23 日课程设计总成绩:辩论小组成员签字:童凯 林洪彬 程淑红 2011年 12月 23 日. z.-摘要首先对图像进展二值化,然后用bwlabel,regionprops等函数对二值图像进展去除噪声操作,然后通过找出与所求区域具有一样标准二阶中心矩的椭圆的长轴长度,短轴长度,离心率等,并找出包含所求区域的最小凸多边形,的顶点坐标。通过一定的方法,用所求椭圆的相关参数确定一个正多边形。使该正多边形具有一个相当大的边数,是该多边形接近一个圆。这个圆就是所要拟合的圆。最后通过三个点求圆的中心和半径。关键字 二值化处理 去噪声处理 圆的拟合 三点求圆的中心和半径 目录第一章 彩色图像的二值化1图像的二值化原理2图像的二值化的程序实现3二值化前后效果比照第二章 去除噪声1去除噪声的原理2去除噪声的程序实现3去除噪声前后的图像比照第三章 圆拟合1圆拟合原理2圆拟合的程序实现3拟合效果第四章 求圆心及半径第五章 完整的Matlab程序总结参考文献资料第一章 彩色图像的二值化第一节 图像的二值化原理图像的二值化处理就是将图像上的点的灰度置为0或255,也就是讲整个图像呈现出明显的黑白效果。即将256个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局部特征的二值化图像。在数字图像处理中,二值图像占有非常重要的地位,特别是在实用的图像处理中,以二值图像处理实现而构成的系统是很多的,要进展二值图像的处理与分析,首先要把灰度图像二值化,得到二值化图像,这样子有利于再对图像做进一步处理时,图像的集合性质只与像素值为0或255的点的位置有关,不再涉及像素的多级值,使处理变得简单,而且数据的处理和压缩量小。所有灰度大于或等于阀值的像素被判定为属于特定物体,其灰度值为255表示,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。第二节 图像的二值化的程序实现方法一:首先将图像转变为灰度图像,再利用ma*,min等函数求阈值分割点,最后转化为二值化图像相关程序:J=imread(1.jpg); %读图像figure;imshow(J); %显示原始图像P=rgb2gray(J); %转换为灰度图像m,n=size(P); %获取图像的行数和列数ma=ma*(ma*(P); %求最大值mi=min(min(P); %求最小值limen=(ma+mi)/2; %求分割阈值I=(Plimen); %二值化figure;imshow(I); %显示二值化图像方法二:首先将图像转变为灰度图像,再利用graythresh等函数求阈值分割点,最后用函数im2bw进展二值化。J=imread(1.jpg); %读图像P=rgb2gray(J);%转换为灰度图像level=graythresh(P);%求分割阈值I=im2bw(P,level);%二值化imshow(I); %显示二值化图像第三节 二值化前后效果比照第二章 去除噪声第一节 去除噪声的原理噪声在理论上可以定义为不可预测,只能用概率统计方法来认识的随机误差。实际获得的图像一般都因受到*种干扰而含有噪声。引起噪声的原因有敏感元器件的部噪声、相片底片上感光材料的颗粒、传输通道的干扰及量化噪声等。噪声产生的原因决定了噪声的分布特性及它和图像信号的关系。先利用bwlabel函数标注连通区域,在通过regionprops函数找出其中的噪声区域,并置零,以此到达去除噪声的目的。第二节 去除噪声的程序实现L = bwlabel(I); % 功能:标注二进制图像中已连接的局部。stats = regionprops(L, Area, Conve*Hull, MajorA*isLength, .MinorA*isLength, Eccentricity, Centroid); %用来度量图像区域属性的函数。测量标注矩阵L中每一个标注区域的一系列属性。L中不同的正整数元素对应不同的区域。 %A = ; %定义数组A%for i = 1 : length(stats) A = A stats(i).Area; %Area是标量,计算出在图像各个区域中像素总个数。%EndmA, ind = ma*(A);I1 = I;I1(find(L=ind) = 0; Figure;imshow(I1);第三节 去除噪声前后的图像比照第三章圆拟合第一节 圆拟合原理首先通过regionprops函数找出与所求区域具有一样标准二阶中心矩的椭圆的长轴长度,短轴长度,离心率等,并找出包含所求区域的最小凸多边形,的顶点坐标。通过一定的方法,用所求椭圆的相关参数确定一个正多边形。使该正多边形具有一个相当大的边数,是该多边形接近一个圆。这个圆就是所要拟合的圆。在指令t = linspace(0, 2*pi,N)中,N-1表示所求正多边形的边数,N越大,所拟合的圆越准确。第二节 圆拟合的程序实现stats = regionprops(L, Area, Conve*Hull, MajorA*isLength, .MinorA*isLength, Eccentricity, Centroid); %用来度量图像区域属性的函数。测量标注矩阵L中每一个标注区域的一系列属性。L中不同的正整数元素对应不同的区域。 %A = ; %定义数组A%for i = 1 : length(stats) A = A stats(i).Area; %Area是标量,计算出在图像各个区域中像素总个数。%EndmA, ind = ma*(A);I1 = I;I1(find(L=ind) = 0; figure;imshow(I1)hold on;temp = stats(ind).Conve*Hull; %Conve*Hull是p行2列的矩阵,包含*区域的最小凸多边形。此矩阵的每一行 存储此多边形一个顶点的*y坐标。%t = linspace(0, 2*pi); % 用法:linspace(*1,*2,N)功能:linspace是Matlab中的一个指令,用于产生*1,*2之间的N点行矢量。其中*1、*2、N分别为起始值、终止值、元素个数。假设缺省N,默认点数为100。应用举例例一:在matlab的命令窗口输入: *=linspace(1,100)将产生从1到100步长为1的数组。类似于在命令窗口中输入:*=1:1:100例二:在命令窗口中输入:*=linspace(5,100,20)将输出:* =5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100这和*=5:5:100的效果是一样的。%c1 = stats(ind).Centroid; %Centroid是1行ndims(L)列的向量,给出每个区域的质心重心。 注意:Centroid 的第一个元素是重心水平坐标*坐标、第二个元素是重心垂直坐标y坐标。Centroid 所有其它元素则按照维顺序排列。a1 = stats(ind).MajorA*isLength; %MajorA*isLength是标量,与区域具有一样标准二阶中心矩的椭圆的长轴长度像素意义下。标准二阶中心矩就是标准方差%b1 = stats(ind).MinorA*isLength; %MinorA*isLength是标量,与区域具有一样标准二阶中 心矩的椭圆的短轴长度像素意义下%d1 = stats(ind).Eccentricity; %Eccentricity是标量,与区域具有一样标准二阶中心矩的椭圆的离心率可作为特征%*1 = c1(1) + d1*b1*cos(t);y1 = c1(2) + d1*a1*sin(t);m=plot(*1, y1, b-); %拟合出一个蓝色的圆第三节 拟合效果t = linspace(0, 2*pi,N)中,N=7时的效果t = linspace(0, 2*pi,N)中,N=500时的效果第四章 求圆心及半径通过在所拟合的圆上任取三个点,通过这三个点确定远的圆心和蚌精*2=*1(1,1);y2=y1(1,1);*3=*1(1,30);y3=y1(1,30);*4=*1(1,80);y4=y1(1,80);a=2*(*3-*2);b=2*(y3-y2);n=(*3*3+y3*y3-*2*2-y2*y2);d=2*(*4-*3);e=2*(y4-y3);f=(*4*4+y4*y4-*3*3-y3*y3);*0=(b*f-e*n)/(b*d-e*a+eps) % 求圆心坐标y0=(d*n-a*f)/(b*d-e*a+eps)r0=sqrt(*0-*2)*(*0-*2)+(y0-y2)*(y0-y2) % 求半径第五章 完整的Matlab程序clc; clear all;close all;I = imread(1.jpg);I = im2bw(I);figure;imshow(I);L = bwlabel(I);stats = regionprops(L, Area, Conve*Hull, MajorA*isLength, . MinorA*isLength, Eccentricity, Centroid);A = ;for i = 1 : length(stats) A = A stats(i).Area;endmA, ind = ma*(A);I1 = I;I1(find(L=ind) = 0;figure;imshow(I1);hold on;1temp = stats(ind).Conve*Hull;t = linspace(0, 2*pi,500);c1 = stats(ind).Centroid;a1 = stats(ind).MajorA*isLength;b1 = stats(ind).MinorA*isLength;d1 = stats(ind).Eccentricity;*1 = c1(1) + d1*b1*cos(t);y1 = c1(2) + d1*a1*sin(t);m=plot(*1, y1, g-);*2=*1(1,1);y2=y1(1,1);*3=*1(1,30);y3=y1(1,30);*4=*1(1,80);y4=y1(1,80);a=2*(*3-*2);b=2*(y3-y2);n=(*3*3+y3*y3-*2*2-y2*y2);d=2*(*4-*3);e=2*(y4-y3);f=(*4*4+y4*y4-*3*3-y3*y3);*0=(b*f-e*n)/(b*d-e*a+eps) % 求圆心y0=(d*n-a*f)/(b*d-e*a+eps)r0=sqrt(*0-*2)*(*0-*2)+(y0-y2)*(y0-y2) % 求半径总结通过此次数字图像课程设计,在完成任务目标中心位置及大小确实定的过程中,了解了更多的关于数字图像的知识。比方说,图像的灰度变换,图像的二值化转换,对*一图像进展去噪声处理,圆的拟合等。 此次课程设计的有些程序是从网上找的,通过学习更加拓宽了我的知识面。有些地方还不太完美,需要改进,恳请教师批评,指正。参考文献资料1、 数字图像处理学 电子公告也 贾永红 20032、 数字图像处理Matlab版 电子工业 冈萨雷斯 20063、 其他数字图像处理和matlab变成发面的书记及相关学习资料. z.
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!