System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于图像处理,具体涉及一种基于人像掩码二值图的图像压缩方法及系统。
技术介绍
1、近年来,随着视频ai的发展,视频人像检测和抠图的技术逐步成熟,人像抠图逐步应用到实际场景中,以获得更好的视频交互体验。例如,直播和视频会议中的人像画中画、多人同窗(背景替换)等功能;另外视频网站上,视频播放时的防字幕遮挡功能,也有用到人像检测技术。此类场景中,往往是一个分享端对应多个接收端,为了保障多个接收端效果的统一,会在分享端完成人像检测输出人像掩码图像(可转换成二值图,方便压缩),接收端用人像掩码完成抠图显示或字幕防遮挡的功能。
2、针对图像压缩可以采用h264、h265、jpeg和png等标准下的混合压缩算法,也可以采用rcl、wbs等针对二值图像设计的统计类压缩算法。由于h264、h265、jpeg和png都属于有损压缩,jpeg和png的压缩率偏低,而h264和h265需要有帧间依赖的情况下才能保障较高的压缩率,但是引入帧间依赖后,一旦出现网络传输丢包等问题,不仅当前二值图出现异常,还会波及后续的二值图。rcl、wbs虽然是针对二值图的特征设计的统计编码,但在人像掩码二值图的压缩表现上,压缩率仍不理想。因此目前暂无不需要帧间依赖仍能保证较高压缩率的人像掩码二值图的压缩方法。
技术实现思路
1、本专利技术提出了一种基于人像掩码二值图的图像压缩方法及系统,在不需要帧间依赖的情况下仍能保证对人像掩码二值图有较高的压缩率,完成无损压缩。
2、本专利技术的第一方面提
3、以预设的方向检索第一图像的人像区域,记录每个人像区域的三元组;其中,所述三元组包括人像区域的起始列坐标、起始行坐标和长度;第一图像为人像掩码二值图;
4、根据所有人像区域的三元组,通过预设的排列顺序得到一个二维信息数组;
5、根据所述二维信息数组,通过预设的偏移算法得到每个人像区域的三元组的重编码;其中,所述重编码包括所述三元组的初始列坐标偏移、初始行坐标偏移和长度偏移;
6、通过预设的动态计数方法对每个人像区域的三元组的重编码进行处理,得到第一图像的二进制编码,以完成对第一图像的图像压缩。
7、上述方案通过检索得到第一图像中人像区域的三元组,再对所述三元组以预设的排列顺序进行排列,得到一个二维信息数据组,然后将该二维信息数组中的数据进行偏移计算得到重编码,并将重编码通过动态计数转化为二进制编码以完成对第一图像的图像压缩,由于在压缩过程中没有近似计算,所以能实现对图像的无损压缩,并在压缩过程中没有帧间依赖。而且压缩过程中的偏移计算和动态计数均能对第一图像的数据量进行压缩,实现提升二进制编码的压缩率。
8、在第一方面的一种可能的实现方法中,根据所有人像区域的三元组,通过预设的排列顺序得到一个二维信息数组,具体为:
9、将所述起始行坐标相同的人像区域的三元组,按照所述起始列坐标从小到大的顺序进行排列,得到所述起始行坐标相同的人像区域的第一信息数组;
10、根据所述第一信息数组,按照所述起始行坐标从小到大的顺序进行排列,得到一个二维信息数组。
11、上述方案对所有人像区域的三元组按照起始行坐标和起始列坐标进行排序,得到一个二维的数组,即为二维信息数组,完成对第一图像的人像区域的提取,为后面对人像区域进行编码和压缩提供数据支撑。
12、在第一方面的一种可能的实现方法中,二维信息数组,具体为:
13、所述二维信息数组,具体表达式为:
14、{{a11,a12,a13…},{a21,a22,a23…}…{am1,am2,am3…amn}}
15、其中,amn为第一图像中第m行第n个人像区域的三元组,{am1,am2,am3…amn}为第一图像中第m行的人像区域的第一信息数组。
16、在第一方面的一种可能的实现方法中,根据所述二维信息数组,通过预设的偏移算法得到每个人像区域的三元组的重编码,具体为:
17、根据所述二维信息数组中人像区域的三元组,通过预设的列坐标偏移算法对每个所述三元组的人像区域的初始列坐标进行处理,得到每个所述三元组的初始列坐标偏移;
18、根据所述二维信息数组中人像区域的三元组,通过预设的行坐标偏移算法对每个所述三元组的人像区域的初始行坐标进行处理,得到每个所述三元组的初始行坐标偏移;
19、根据所述二维信息数组中人像区域的三元组,通过预设的长度偏移算法对每个所述三元组的人像区域的长度进行处理,得到每个所述三元组的长度偏移;
20、根据每个所述三元组的初始列坐标偏移、初始行坐标偏移和长度偏移,得到每个所述三元组的重编码。
21、上述方案通过预设的偏移算法分别对人像区域的三元组的起始列坐标、起始行坐标和长度进行偏移计算,对所述三元组进行重新编码,为后续的二进制编码简化步骤。
22、在第一方面的一种可能的实现方法中,三元组的初始列坐标偏移、初始行坐标偏移和长度偏移,以及所述三元组的重编码,具体为:
23、所述三元组的初始列坐标偏移δaxmn,具体公式为:
24、
25、其中,axmn为第一图像中第m行第n个人像区域的三元组的初始列坐标,nmaxm-1为第一图像中第m-1行的人像区域的总数;
26、所述三元组的初始行坐标偏移δaymn,具体公式为:
27、
28、其中,aymn为第一图像中第m行第n个人像区域的三元组的初始行坐标;
29、所述三元组的长度偏移δalmn,具体公式为:
30、
31、其中,almn为第一图像中第m行第n个人像区域的三元组的长度;
32、所述三元组的重编码δamn,具体公式为:
33、
34、在第一方面的一种可能的实现方法中,通过预设的动态计数方法对每个人像区域的三元组的重编码进行处理,得到第一图像的二进制编码,具体为:
35、通过预设的动态计数方法将所述重编码的所述初始列坐标偏移、初始行坐标偏移和长度偏移,分别转化为对应的第一阈值位的动态编码;其中,所述动态编码编码的首位为所述重编码的符号,所述动态编码的格式为二进制编码;
36、根据所述动态编码,得到第一图像的二进制编码。
37、上述方案通过预设的动态计数方法对所述重编码转化为二进制编码并进行动态计数,实现对第一图像的数据的压缩,提升了人像区域的二进制编码的压缩率。
38、本专利技术第二方面提供了一种基于人像掩码二值图的图像压缩系统,所述系统包括:人像区域检索模块,数据排列模块,数据偏移计算模块和数据动态编码模块;
39、所述人像区域检索模块,用于以预设的方向检索第一图像的人像区域,记录每个人像区域的三元组;其中,所述三元组包括人像区域的起始列坐标、起始行坐标和长度;第一本文档来自技高网...
【技术保护点】
1.一种基于人像掩码二值图的图像压缩方法,其特征在于,包括:
2.根据权利要求1所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述根据所有人像区域的三元组,通过预设的排列顺序得到一个二维信息数组,具体为:
3.根据权利要求2所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述二维信息数组,具体为:
4.根据权利要求1所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述根据所述二维信息数组,通过预设的偏移算法得到每个人像区域的三元组的重编码,具体为:
5.根据权利要求4所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述三元组的初始列坐标偏移、初始行坐标偏移和长度偏移,以及所述三元组的重编码,具体为:
6.根据权利要求1所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述通过预设的动态计数方法对每个人像区域的三元组的重编码进行处理,得到第一图像的二进制编码,具体为:
7.一种基于人像掩码二值图的图像压缩系统,其特征在于,包括:人像区域检索模块,数据排列模块,数据偏移计算模块和数据动态编码模
8.根据权利要求7所述的基于人像掩码二值图的图像压缩系统,其特征在于,所述数据排列模块包括:三元组排列单元;
9.根据权利要求7所述的基于人像掩码二值图的图像压缩系统,其特征在于,所述数据偏移计算模块包括:重编码计算单元;
10.根据权利要求7所述的基于人像掩码二值图的图像压缩系统,其特征在于,所述数据动态编码模块包括:二进制编码计算单元;
...【技术特征摘要】
1.一种基于人像掩码二值图的图像压缩方法,其特征在于,包括:
2.根据权利要求1所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述根据所有人像区域的三元组,通过预设的排列顺序得到一个二维信息数组,具体为:
3.根据权利要求2所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述二维信息数组,具体为:
4.根据权利要求1所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述根据所述二维信息数组,通过预设的偏移算法得到每个人像区域的三元组的重编码,具体为:
5.根据权利要求4所述的基于人像掩码二值图的图像压缩方法,其特征在于,所述三元组的初始列坐标偏移、初始行坐标偏移和长度偏移,以及所述三元组的重编码,具体为:
6....
【专利技术属性】
技术研发人员:刘建鹏,梁二振,
申请(专利权)人:厦门亿联网络技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。