1.一种基于岩心照片识别裂缝类型的方法,其特征在于,所述方法包括以下步骤:步骤1,用工业CCD相机对岩心进行扫描以获取岩心外表面图片;
步骤2,对岩心外表面图片进行预处理得到岩心预处理图;
步骤3,对岩心预处理图进行边缘检测得到边缘轮廓构成的各个裂缝区域,所述各个裂缝区域构成第一集合;
步骤4,对第一集合进行处理,筛选出天然裂缝集合;
步骤5,修复天然裂缝集合中的天然裂缝图像,调整天然裂缝图像到统一大小。
2.根据权利要求1所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,在步骤
1中,用工业CCD相机对岩心进行扫描以获取岩心外表面图片的方法包括以下子步骤:步骤1.1,将岩心放在步进电机控制旋转的滚辊上;
步骤1.2,使用工业CCD相机扫描岩心;
步骤1.3,每一次旋转滚辊采集一条像素线,之后旋转滚辊,根据需要的精度调整旋转的速度,直到一个岩心被采集完毕,一个岩心采集的所有像素线构成像素线集合;
步骤1.4,把采集到的像素线集合合成一幅完整的岩心外表面图片。
3.根据权利要求1所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,在步骤
2中,对步骤1得到的岩心外表面图片进行预处理,利用最大值灰度化法获得岩心预处理图。
4.根据权利要求1所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,在步骤
2中,对岩心外表面图片进行预处理得到岩心预处理图的方法包括以下子步骤:步骤2.1,读取岩心外表面图片的像素,依次获得各个像素的红色分量,绿色分量和蓝色分量,分别为PRedPGreen,PBlue,各颜色分量的取值范围为0~255;
步骤2.2,初始设置对比度比重E,颜色分量极值Gm=128;
步骤2.3,根据公式:
BRef=0.213×PRed+0.715×PGreen+0.072×PBlue,获得像素的参考色度值BRef;
步骤2.4,如果MAX(PRed,PGreen,PBlue)-MIN(PRed,PGreen,PBlue)<Gm,则H=MEDIAN(PRed,PGreen,PBlue),MEDIAN()表示取括号中三个元素的中值,MAX()表示取括号中三个元素的最大值,MIN()表示取括号中三个元素的的最小值,计算 并转到步骤2.5,否则转到步骤2.3计算下一个像素的参考色度值;
步骤2.5,如果E×MAX(PRed,PGreen,PBlue)>255,则:;
步骤2.6,对各个像素进行处理,P’Red=E*PRed,P’Green=E*PGreen,PBlue=E* PBlue;
步骤2.7,读取下一个像素,如果是最后一个像素,转到步骤2.8,否则转到步骤2.1;
步骤2.8,依次对所有像素按下式进行变换:PIXAL=(MIN(PRed,PGreen,PBlue)+MAX(PRed,PGreen,PBlue))÷2;
步骤2.9,如果存在像素的PIXAL值大于等于Gm,则将此像素的Pedge为TRUE,否则Pedge为FALSE;Pedge为每个像素的有效边标记,其值为TRUE或FALSE,TRUE为真,表示该像素为有效边上的像素,即表示该像素为真实的裂缝边缘上;FALSE为假,表示表示该像素为无效边标记上的像素,即表示该像素为裂缝边缘的毛刺上;
步骤2.10,将Pedge的值标记到岩心外表面图片的相应位置,构成岩心预处理图,输出岩心预处理图。
5.根据权利要求1所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,在步骤
4中,对第一集合进行处理,筛选出天然裂缝集合的方法,包括以下子步骤:步骤4.1,设置变量i,初始化i的值为1;令N为第一集合中元素的数量;第一集合为G={Gj},Gj为G中第j个裂缝区域图像,将Gj转化为Gj图像的像素矩阵中像素的集合,其中,j取值范围为[1,N],建立空集合G’;
步骤4.2,依次提取Gi中的像素中标记Pedge为TRUE的像素的像素集合为P
步骤4.3,设置变量b的值为1,建立空集合DP
步骤4.4,设置变量c=b+step1,变量d=c+step2,step1和step2为步进值,如果d>k,则跳转到步骤4.11,否则跳转步骤4.5;
其中,步进值step1值和step2值的获取方式为:通过Harris角点检测对P
步骤4.5,从集合P
步骤4.6,p1(xb,yb),p2(xc,yc),p3(xd,yd)构成三角形,构造所述三角形的外接圆,圆心为Cb,外接圆Cb的半径为Cr,把Cr加入DP_AVG
步骤4.7,设置变量e的值为1;
步骤4.8,从集合P
步骤4.9,将变量e的值增加1,如果e≤k,跳转步骤4.8,否则跳转步骤4.10;
步骤4.10,计算DP_AVG
步骤4.11,取得P_MAX
步骤4.12,从集合Gi中剔除EXCL(xh,yh)中的元素后合并到集合G’中,将变量i的值增加
1;
步骤4.13,如果i≤N,跳转到步骤4.2,否则跳转到步骤4.14;
步骤4.14,令G’集合为第二集合,第二集合即为剔除了人工裂缝的天然裂缝集合。
6.根据权利要求5所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,在步骤
5中,修复天然裂缝集合中的天然裂缝图像的方法包括以下子步骤:步骤5.1,设置变量p和q,初始化p和q的值为1;令M为第二集合G’中元素的数量;第二集合为G’={G’r},将G’r转化为G’r图像的像素矩阵中像素的集合,G’r为G’中第r个裂缝图像,其中,r取值范围为[1,M];
步骤5.2,通过直线检测方法检测得到G’p中的直线段集合L,所述直线检测方法包括最小二乘法拟合直线、LSD线段检测、Hough变换检测直线、Ransac拟合直线中任意一种;
步骤5.3,如果L为空集则令p的值增加1并转到步骤5.2,如果L不为空集则转到步骤
5.4;
步骤5.4,从集合G’中筛选出除G’p外的各个裂缝图像的重心或几何中心P1到G’p的重心或几何中心P2的欧氏距离小于Lmax的待合并裂缝图像集合G2,其中,Lmax为集合L中最长直线段的长度;
步骤5.5, 通过Harris角点检测对G’p的像素点集合构成的封闭区域进行检测得到多个角点,得到的角点集合CP2
依次扫描CP2
步骤5.6,将G3的外接圆与G3的各个切点相互之间构成的各个线段中选取与L2的长度的差值的绝对值E最小的线段LQ的两个切点作为第一连接点和第二连接点;将LQ按照L2的方向旋转第一角度,按照第一角度对应的旋转G3;其中,令线段L2的两个端点为第三连接点和第四连接点,第三连接点到第四连接点的线段方向对应于G3中第一连接点到第二连接点的线段方向;
步骤5.7,将G3移动到G3的第一连接点与L2的第三连接点的重合的位置,如果E>0,则通过边缘检测算子对G’p检测边缘线,令第四连接点在G’p边缘线上对应的坐标位置的像素点为P4点,从P4点开始,沿着第三连接点和第四连接点的线段方向,从第四连接点开始复制G’p上截面长度为E的边缘线,(即取从第四连接点开始复制所述边缘线的两个端点的之间的直线距离为E,边缘线的两个端点其中一个端点为第四连接点),复制的边缘线的两个端点第五连接点和第六连接点,将复制的边缘线的第五连接点移动到第二连接点的坐标处,第六连接点对应的移动到第四连接点处得到新的G’p,完成了G’p的修复,将G3从第二集合G’中删除并将G3从待合并裂缝图像集合G2中删除;
步骤5.8,如果p<M,将变量p的值增加1并转到步骤5.2,当p≥M时转到步骤5.9;
步骤5.9,输出第二集合G’作为修复好的天然裂缝集合。
7.根据权利要求1所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,在步骤
5中,修复天然裂缝集合,包括以下步骤:抽取天然裂缝集合中的天然裂缝图像,对每个天然裂缝图像进行按照Z型走向遍历分割出孤立曲线CURVEN,小于阈值的曲线重新分配给邻近的大于阈值的曲线;对CURVEN建立最小外接矩形;调整天然裂缝图像到统一大小得到统一大小的天然裂缝图像。
8.根据权利要求1所述的一种基于岩心照片识别裂缝类型的方法,其特征在于,所述方法还包括,步骤6,把统一大小的天然裂缝图像输入预先训练好的卷积神经网络模型,得到天然裂缝的类型,具体包括以下子步骤:
步骤6.1,利用已有的带标记的岩心图片,分成训练数据集和测试数据集;
步骤6.2,建立预测卷积神经网络模型模型,把训练数据集输入模型训练;
步骤6.3,使用测试数据集验证预测模型直到准确度高于阈值;
步骤6.4,把统一大小的天然裂缝图像输入预先训练好的卷积神经网络模型,得到天然裂缝的类型,所述天然裂缝类型可以分为构造裂缝和非构造裂缝两类:构造裂缝主要包括张性裂缝、剪性裂缝和压性裂缝,而非构造裂缝则主要包括溶蚀缝、压实缝、风化缝、层间缝和沉积裂缝。