本申请涉及图像处理,特别是涉及一种图像裁剪方法、装置、设备及介质。
背景技术:
1、在图像处理过程中,为减少图像背景值的干扰并减少存储空间,通常会裁剪掉图像中的空白区域。目前,可以采用两种方法进行空白区域的图像裁剪。
2、第一种,可以基于像素进行图像裁剪。具体的,可以分别找出图像中最左、最右、最上和最下的非零像素点,并裁剪掉四个像素点围成的区域以外的空白区域。然而,上述方法无法对四个像素点围成的区域以内的空白区域进行裁剪,也无法去除掉孤立的像素,导致裁剪的准确度较差。
3、第二种,可以基于最大轮廓面积进行图像裁剪,轮廓面积表示具有相同颜色或灰度的连续点的曲线所围成的面积。具体的,可以根据计算出的轮廓面积进行排序,输出最大轮廓面积对应的坐标后,裁剪掉坐标以外的空白区域。然而,上述方法由于只考虑到了轮廓面积,导致裁剪的鲁棒性较差。
技术实现思路
1、本申请提供了一种图像裁剪方法、装置、设备及介质,能够提高图像裁剪的准确度和鲁棒性。
2、本申请公开了如下技术方案:
3、第一方面,本申请提供了一种图像裁剪方法,所述方法包括:
4、获取待裁剪图像;
5、提取所述待裁剪图像中所有的轮廓周长,所述轮廓周长为具有相同颜色或灰度的连续点连成的曲线的周长;
6、根据所述所有的轮廓周长中的最大值,确定最大轮廓坐标;
7、对所述最大轮廓坐标围成的区域以外的区域,执行图像裁剪。
8、可选的,所述待裁剪图像为四通道图像,所述提取所述待裁剪图像中所有的轮廓周长,包括:
9、读取所述待裁剪图像的透明alpha通道;
10、将三个所述alpha通道进行合并,以获取目标图像,所述目标图像为三通道图像;
11、对所述目标图像进行灰度化处理,以获取灰度图像;
12、提取所述灰度图像中所有的轮廓周长。
13、可选的,所述提取所述灰度图像中所有的轮廓周长,包括:
14、对所述灰度图像进行二值化处理,以获取黑白图像;
15、提取所述黑白图像中所有的轮廓周长。
16、可选的,所述提取所述待裁剪图像中所有的轮廓周长,包括:
17、基于cv2.findcontours函数,提取所述待裁剪图像中所有的轮廓;
18、基于arclength函数,计算所述所有的轮廓对应的所有的轮廓周长。
19、可选的,在所述执行图像裁剪后,所述方法还包括:
20、确定所述待裁剪图像的原始边界尺寸;
21、将裁剪后的图像等比例放大,以使所述裁剪后的图像的至少一个边界尺寸与所述原始边界尺寸相等,得到最终裁剪图像。
22、第二方面,本申请提供了一种图像裁剪装置,所述装置包括:获取模块、提取模块、确定模块和执行模块;
23、所述获取模块,用于获取待裁剪图像;
24、所述提取模块,用于提取所述待裁剪图像中所有的轮廓周长,所述轮廓周长为具有相同颜色或灰度的连续点连成的曲线的周长;
25、所述确定模块,用于根据所述所有的轮廓周长中的最大值,确定最大轮廓坐标;
26、所述执行模块,用于对所述最大轮廓坐标围成的区域以外的区域,执行图像裁剪。
27、可选的,所述提取模块,包括:读取子模块、合并子模块、获取子模块和第一提取子模块;
28、所述读取子模块,用于读取所述待裁剪图像的透明alpha通道;
29、所述合并子模块,用于将三个所述alpha通道进行合并,以获取目标图像,所述目标图像为三通道图像;
30、所述获取子模块,用于对所述目标图像进行灰度化处理,以获取灰度图像;
31、所述第一提取子模块,用于提取所述灰度图像中所有的轮廓周长。
32、可选的,所述第一提取子模块,包括:黑白提取子模块和周长提取子模块;
33、所述黑白提取子模块,用于对所述灰度图像进行二值化处理,以获取黑白图像;
34、所述周长提取子模块,用于提取所述黑白图像中所有的轮廓周长。
35、可选的,所述提取模块,包括:第二提取模块和第三提取模块;
36、所述第二提取模块,用于基于cv2.findcontours函数,提取所述待裁剪图像中所有的轮廓;
37、所述第三提取模块,用于基于arclength函数,计算所述所有的轮廓对应的所有的轮廓周长。
38、可选的,所述装置还包括:尺寸确定模块和比例放大模块;
39、所述尺寸确定模块,用于确定所述待裁剪图像的原始边界尺寸;
40、所述比例放大模块,用于将裁剪后的图像等比例放大,以使所述裁剪后的图像的至少一个边界尺寸与所述原始边界尺寸相等,得到最终裁剪图像。
41、第三方面,本申请提供了一种图像裁剪设备,包括:存储器和处理器;
42、所述存储器,用于存储程序;
43、所述处理器,用于执行所述计算机程序时实现上述图像裁剪方法的步骤。
44、第四方面,本申请提供了一种计算机可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现上述图像裁剪方法的步骤。
45、相较于现有技术,本申请具有以下有益效果:
46、本申请提供了一种图像裁剪方法、装置、设备及介质,该方法包括:获取待裁剪图像;提取待裁剪图像中所有的轮廓周长,该轮廓周长为具有相同颜色或灰度的连续点连成的曲线的周长;根据所有的轮廓周长中的最大值,确定最大轮廓坐标;对最大轮廓坐标围成的区域以外的区域,执行图像裁剪。由此,通过选取待裁剪图像中的最大轮廓周长对应的最大轮廓坐标所包围的区域为目标区域,将目标区域以外的区域作为空白区域进行图像裁剪,可以有效减少裁剪后的图像中的空白区域,提高图像裁剪的准确度和鲁棒性。
1.一种图像裁剪方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述待裁剪图像为四通道图像,所述提取所述待裁剪图像中所有的轮廓周长,包括:
3.根据权利要求2所述的方法,其特征在于,所述提取所述灰度图像中所有的轮廓周长,包括:
4.根据权利要求1所述的方法,其特征在于,所述提取所述待裁剪图像中所有的轮廓周长,包括:
5.根据权利要求1所述的方法,其特征在于,在所述执行图像裁剪后,所述方法还包括:
6.一种图像裁剪装置,其特征在于,所述装置包括:获取模块、提取模块、确定模块和执行模块;
7.根据权利要求6所述的装置,其特征在于,所述提取模块,包括:读取子模块、合并子模块、获取子模块和第一提取子模块;
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:尺寸确定模块和比例放大模块;
9.一种图像裁剪设备,其特征在于,包括:存储器和处理器;
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至5任一项所述的方法的各个步骤。