System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及录像,特别是涉及一种水印图像生成方法及电子设备。
技术介绍
1、图像采集设备可以对指定区域进行图像采集,并存储所采集的图像。为了便于对图像采集设备所存储的图像进行后续处理,可以指示图像采集设备输出该图像。例如,指示nvr(network video recorder,网络视频录像机)将所采集的视频数据传输至预设硬盘中进行永久性存储,或者,在预设展示窗口进行展示等。通常,可以将图像采集设备所存储的图像或者视频,称为录像。
2、由于展示需要,可以对图像采集设备输出的录像中,叠加水印字符,以便于在后续每次展示该录像时,所展示的每帧视频画面均包括该水印字符;例如,可以将录像的采集时间和采集地点作为水印字符叠加至nvr导出的录像中,这样,在后续每次播放该录像时,所播放的各帧画面中均显示有该水印字符。
3、然而,在展示叠加有水印字符的录像时,可能因水印字符的边缘呈现锯齿状而影响图像显示效果;基于此,亟需一种水印图像生成方法,在避免水印字符的边缘锯齿感影响图像显示效果的情况下,生成适应于水印显示透明度要求的水印图像。
技术实现思路
1、本申请实施例的目的在于提供一种水印图像生成方法及电子设备,以在避免水印字符的边缘锯齿感影响图像显示效果的情况下,生成适应于水印显示透明度要求的水印图像。
2、具体技术方案如下:
3、第一方面,本申请实施例提供了一种水印图像生成方法,所述方法包括:
4、获取基于用户指令所确定的水印字符;其中,所述
5、生成所述水印字符的矢量图;
6、将所述矢量图转换为透明度为所述目标透明度的基础水印图像。
7、可选的,一种具体实现方式中,所述获取基于用户指令所确定的水印字符,包括:
8、在接收到用户指令时,确定发送所述用户指令的用户的用户标识和接收到所述用户指令的当前系统时间,并将所述用户标识和所述当前系统时间确定为水印字符;
9、或者,
10、获取所述用户指令中所携带的水印字符。
11、可选的,一种具体实现方式中,所述矢量图包括:每个像素点的灰度值;
12、所述将所述矢量图转换为透明度为所述目标透明度的基础水印图像,包括:
13、将所述矢量图转换为透明度为所述目标透明度的rgb图像,作为基础水印图像;
14、其中,所述基础水印图像中每个像素点的rgb值是基于所述矢量图中该像素点的灰度值确定的。
15、可选的,一种具体实现方式中,所述生成所述水印字符的矢量图,包括:
16、利用freetype字库引擎,生成所述水印字符的矢量图。
17、可选的,一种具体实现方式中,在生成所述水印字符的矢量图之前,所述方法还包括:
18、基于所述水印字符的字符格式以及所述freetype字库引擎的字库参数,计算待生成的所述水印字符的矢量图所占用的存储空间的目标尺寸,并在预设存储区域内申请尺寸为所述目标尺寸的目标存储空间;其中,所述字符格式包括字符尺寸、字符数量以及旋转角度;
19、所述方法还包括:
20、在生成所述矢量图后,将所述矢量图存储于所述目标存储空间内。
21、可选的,一种具体实现方式中,所述方法还包括:
22、确定待生成的目标水印图像的分辨率;
23、基于所述分辨率,确定多个所述基础水印图像在用于生成所述目标水印图像的原始图像中所在的位置区域;
24、按照所述位置区域,在所述原始图像中叠加所述基础水印图像,得到初始水印图像;
25、基于所述分辨率,在所述初始水印图像中截取所述目标水印图像。
26、可选的,一种具体实现方式中,所述基于所述分辨率,确定多个所述基础水印图像在用于生成所述目标水印图像的原始图像中所在的位置区域,包括:
27、确定所述分辨率对应的预设尺寸,并计算预设倍数与所述预设尺寸的乘积,作为用于生成所述目标水印图像的原始图像的原始尺寸;其中,所述预设倍数不小于1;
28、基于所述原始尺寸与所述基础水印图像的基础尺寸的关系,确定多个所述基础水印图像在所述原始图像中所在的位置区域。
29、可选的,一种具体实现方式中,所述基于所述分辨率,在所述初始水印图像中截取所述目标水印图像,包括:
30、若所述原始图像与所述目标水印图像的尺寸相同,则将所述初始水印图像确定为所述目标水印图像;
31、若所述原始图像的原始尺寸大于所述目标水印图像的尺寸,则在所述初始水印图像中截取所述分辨率对应的预设尺寸的图像,作为目标水印图像。
32、可选的,一种具体实现方式中,所述方法还包括;
33、获取从预设存储设备中导出的图片或视频帧,作为待进行水印叠加的待叠加图像;
34、对所述待叠加图像进行解码处理,得到解码后的待叠加图像数据,并获取所述待叠加图像数据中的画布信息;
35、将所述画布信息中,用于叠加所述基础水印图像的区域的图像信息替换为所述基础水印图像的图像信息,得到叠加有所述基础水印图像的目标图像数据。
36、第二方面,本申请实施例提供了一种水印图像生成装置,所述装置包括:
37、水印字符获取模块,用于获取基于用户指令所确定的水印字符;其中,所述用户指令包括目标透明度;
38、图像生成模块,用于生成所述水印字符的矢量图;
39、基础图像生成模块,用于将所述矢量图转换为透明度为所述目标透明度的基础水印图像。
40、可选的,一种具体实现方式中,所述水印字符获取模块,具体用于:
41、在接收到用户指令时,确定发送所述用户指令的用户的用户标识和接收到所述用户指令的当前系统时间,并将所述用户标识和所述当前系统时间确定为水印字符;
42、或者,
43、获取所述用户指令中所携带的水印字符。
44、可选的,一种具体实现方式中,所述矢量图包括:每个像素点的灰度值;
45、所述基础图像生成模块,具体用于:
46、将所述矢量图转换为透明度为所述目标透明度的rgb图像,作为基础水印图像;
47、其中,所述基础水印图像中每个像素点的rgb值是基于所述矢量图中该像素点的灰度值确定的。
48、可选的,一种具体实现方式中,所述图像生成模块,具体用于:
49、利用freetype字库引擎,生成所述水印字符的矢量图。
50、可选的,一种具体实现方式中,所述装置还包括:
51、存储空间申请模块,用于在生成所述水印字符的矢量图之前,基于所述水印字符的字符格式以及所述freetype字库引擎的字库参数,计算待生成的所述水印字符的矢量图所占用的存储空间的目标尺寸,并在预设存储区域内申请尺寸为所述目标尺寸的目标存储空间;其中,所述字本文档来自技高网...
【技术保护点】
1.一种水印图像生成方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述获取基于用户指令所确定的水印字符,包括:
3.根据权利要求2所述的方法,其特征在于,所述矢量图包括:每个像素点的灰度值;
4.根据权利要求3所述的方法,其特征在于,所述生成所述水印字符的矢量图,包括:
5.根据权利要求4所述的方法,其特征在于,在生成所述水印字符的矢量图之前,所述方法还包括:
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述基于所述分辨率,确定多个所述基础水印图像在用于生成所述目标水印图像的原始图像中所在的位置区域,包括:
8.根据权利要求6或7所述的方法,其特征在于,所述基于所述分辨率,在所述初始水印图像中截取所述目标水印图像,包括:
9.根据权利要求1所述的方法,其特征在于,所述方法还包括;
10.一种电子设备,其特征在于,包括:
【技术特征摘要】
1.一种水印图像生成方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述获取基于用户指令所确定的水印字符,包括:
3.根据权利要求2所述的方法,其特征在于,所述矢量图包括:每个像素点的灰度值;
4.根据权利要求3所述的方法,其特征在于,所述生成所述水印字符的矢量图,包括:
5.根据权利要求4所述的方法,其特征在于,在生成所述水印字符的矢量图之前,所述方法还包括:
6.根据权利要...
【专利技术属性】
技术研发人员:余永顺,赵杰磊,张腾飞,
申请(专利权)人:杭州海康威视数字技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。