资源描述
边长测量方法及其数值的显示,该例子位于:,主要功能:,根据图片大小,测量出管脚的实际宽度和距离。(如右图所示) 实现方法: 画出一矩形确定ROI,将管脚信息包含在内,根据灰度值检测到管脚的边缘。再由边缘的变换次序(从灰度值从大到小和小到大) ,得出边缘对,计算边缘对的距离和相对距离,得出管脚宽度和距离。,功能及实现方法,第一步:读入图片并初始化项目,读入图像,获取图像信息:返回宽度,和高度,创建大小适合的窗体,设置系统字体,初始化,如果为0则,设为-1(任意值),If语句表达方式,判断大小指令,使之窗口按比例缩小,设置系统显示字体,获取操作系统名称,放入OS,判断前三位,如果为win则为windows操作系统,设置字体,格式为:-FontName-Height-Width-Italic-Underlined-Strikeout-Bold-CharSet- 以-作为开始和结束,斜体,下划线,粗体,*则为系统默认,1为确认,0为否定,第二步:确立矩形框,设定ROI,以矩形两条中心轴交点作为原点,与X轴形成的角度,提取边缘最近的点作为参考像素,中心点的行坐标,中心点的列坐标,中心轴角度,主轴半径,测得的图像窗口宽和高,功能:为取得一垂直于矩形中心轴的边缘直线,输出图像的窗口代码,第三步:根据设定的参数进行测量,高斯平滑滤波器中的参数,灰度门槛值,返回所有边缘对,如果设定为last则只回最后一对,如果为first则只回第一对,得出一垂直与矩形中心轴线的边缘直线,功能:提供一垂直于矩形中心轴线的边缘直线, 为Transition为“positive”则当边缘灰度值由黑到白转变时,矩形主轴的位置将返回到RowEdgeFirst和ColumnEdgeFirst中,当边缘灰度值由白到黑转变时,矩形主轴的位置将返回到RowEdgeSecond和ColumnEdgeSecond中,如果为“negative”则情况恰好相反。 提取到的边缘只返回主轴上的单个点,放入到AmplitudeFirst和AmplitudeSecond当中。IntraDistance为一个数组,返回每对边缘的距离,InterDistance也为一个数组,返回每连续对边缘的距离。,第四步:使测量结果可视化,显示图像,用边缘线条显示,画出该矩形,显示出测量的边缘线条和结果(包括引脚的宽度和距离),显示矩形ROI,计算数组元素的个数,显示边缘线,数值的显示位置大小的设定,计算得出边缘线条的起始点和结束点,设定显示的颜色,宽度,并显示,由于窗体被缩放,所以需要重新确定位置,从该指令中的出的字体大小为按照文本窗口的像素大小设定的,在适当的位置显示数值,获取当前图像的起始坐标点和结束坐标点,获取窗体的信息,按照无放大缩小的像素进行测量,得出缩放前后的比例,功能:获取文本显示所需要的范围大小,需要显示的文本信息,文本显示有一个基准线,Ascent为上升值,Descent为下降值,加起来便是高,正常显示文本所需要的宽和高,得出在图像中显示所需大小,文本左上脚的坐标,以一个大写字母为依据,功能为设置文本放置的位置,显示字符串,显示边缘,管脚宽度和相互之间的距离,Thank you!,
展开阅读全文