【技术实现步骤摘要】
布氏硬度压痕圆测量方法、系统及计算机可读存储介质
[0001]本专利技术涉及布氏硬度压痕圆测量领域,具体而言是一种基于计算机视觉的布氏硬度压痕圆测量方法系统及计算机可读存储介质。
技术介绍
[0002]布氏硬度试验压痕具有一定大小,测得的硬度值比较准确,广泛应于材料特性检验,然而现有的人工测量方法是利用显微镜认为标定压痕圆大小,受仪器精度和人为操作影响,误差大,效率低。
[0003]近些年来关于压痕圆自动检测装置及相关方法对不同材质、不同粗糙度、不同纹理的表面适应性较差,不能得到正确的结果;利用经典Hough圆变换算法进行检测运算量大、实时性差,对大批次测量和后续手持式设备开发不友好;对压痕有残缺、破损、断开拟合效果不理想。
技术实现思路
[0004]为了解决现有技术中存在的技术问题,本专利技术的目的是提供了一种设备结构简单、算法运行速度快并对试样表面质量和压痕圆自身完整性要求低且结果精确度高的布氏硬度压痕圆直径的测量方法、系统及计算机可读存储介质。
[0005]为实现上述目的,本专利技术采用如下技术方案:
[0006]第一方面,一种基于计算机视觉的布氏硬度压痕圆测量方法,其步骤如下:
[0007]步骤1获取试样上硬度压痕圆的彩色图像;
[0008]步骤2对彩色图像进行预处理,得到二值图像;
[0009]步骤3对二值图像在不同方向上进行边缘检测及处理,得到点在二值图像上的点集合及值集合;
[0010]步骤4对得到的点集合求交集,并对交集进行筛选, ...
【技术保护点】
【技术特征摘要】
1.布氏硬度压痕圆测量方法,其特征在于,包括以下步骤:步骤1获取试样上硬度压痕圆的彩色图像;步骤2对彩色图像进行预处理,得到二值图像;步骤3对二值图像在不同方向上进行边缘检测及处理,得到点在二值图像上的点集合及值集合;步骤4对得到的点集合求交集,并对交集进行筛选,得到坐标点集合,对中坐标点集合点进行连续性分析、噪点去除后,对坐标点集合进行最小二乘拟合,得到布氏硬度压痕圆的直径和圆心坐标。2.如权利要求1所述的基于计算机视觉的布氏硬度压痕圆测量方法,其特征在于,步骤2包括以下步骤:步骤2.1将彩色图像转换为灰度图像,灰度图像是每个像素只有一个采样通道的图像;步骤2.2以某一阈值对步骤2.1中灰度图像进行阈值反二值化,得到二值图像IMG,二值图像IMG上任意一点的像素非纯白即纯黑,纯白的像素值为最大值,纯黑的像素值为最小值。3.如权利要求1所述的基于计算机视觉的布氏硬度压痕圆测量方法,其特征在于,步骤3包括以下步骤:步骤3.0建立笛卡尔坐标系,规定坐标系原点在图像左上角,由左到右为x轴正方向,由上到下为y轴正方向;步骤3.1从左至右,从上到下逐行对图像进行遍历;步骤3.2从右至左,从上到下逐行对图像进行遍历;步骤3.3从上至下,从左到右逐列对图像进行遍历;步骤3.4从下至上,从左到右逐列对图像进行遍历;步骤3.5将步骤2中的得到的二值图像IMG顺时针旋转45
°
,并在空白处填充纯黑色得到正方形图像IMG_ROTATE,对图像IMG_ROTATE按照步骤3.1
‑
3.4处理,对得到的集合后逆时针旋转45
°
并进行平移变换,得到点在二值图像IMG上的点集合及值集合,分别记为E,E1,F,F1,G,G1,H,H1。4.如权利要求3所述的基于计算机视觉的布氏硬度压痕圆测量方法,其特征在于,步骤3.1包括以下步骤:步骤3.1.1如果某个位置(x1,y1)的像素值为最大值,检查(x1‑
1,y1)的像素值是否为最小值,如果是进行步骤3.1.2,否则继续进行步骤3.1.1;步骤3.1.2检查(x1+1,y1)、(x1+2,y1)、(x1+3,y1)位置像素值是否都为最大值,如果是进行步骤3.1.3,否则返回步骤3.1.1;步骤3.1.3继续检查(x1+i,y1)的像素值,其中i的值为3~r,r为设定的阈值;记像素值为最大值的点的个数为j,若最大值的点个数j大于设定的阈值v,则进行步骤3.1.4,否则返回步骤3.1.1;步骤3.1.4继续检查(x1+i,y1)的像素值,其中i>r,若(x1+i,y1)像素值为最大值,则将步骤3.1.4中的j累加1,若(x1+i,y1)值为最小值或超出图像边界,则将点(x1‑
1,y1)添加到集合A中,将j的值添加到集合A中,结束对该点的操作;继续步骤3.1.1
‑
步骤3.1.4中的遍历,直到所有点完成。
5.如权利要求3所述的基于计算机视觉的布氏硬度压痕圆测量方法,其特征在于,步骤3.2包括以下步骤:步骤3.2.1如果某个位置(x2,y2)的值为最大值,检查(x2+1,y2)的值是否为最小值,如果是进行步骤3.2.2,否则继续进行步骤3.2.1;步骤3.2.2检查(x2‑
1,y2)、(x2‑
2,y2)、(x2‑
3,y2)位置像素值是否都为最大值,如果是进行步骤3.2.3,否则返回步骤3.2.1;步骤3.2.3检查(x2‑
i,y2)的像素值,其中i的值为3~r,r为设定的阈值;记像素值为最大值的点的个数为j,若j大于设定的阈值v,则进行步骤3.1.4,否则返回步骤3.2.1;步骤3.2.4继续检查(x2‑
i,y2)的像素值,其中i>r,若(x2‑
i,y2)像素值为最大值,则将步骤3.2.3中的j累加1,若(x2‑
i,y2)像素值为最小值或超出图像边界,则将点(x2+1,y2)添加到集合B中,将j值添加到集合B1中,结束对该点的操作,继续步骤...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。