为图片添加盲水印。用户不能直接看到该水印,但可以通过使用 IMM 的解析盲水印功能来恢复图中隐藏的水印。

可以用于图片版权追溯。

支持图片、文字作为盲水印添加到图片中。

当加水印的图片经过变换后(如压缩、缩放),水印可能难以解析。

该功能不依赖媒体集Set 。

请求参数

Parameter Type Required Comment
Project string Y Project
ImageUri string Y 待加水印图片 OSS URI,如 oss://imm-test/testcases/test.jpg OSS地址规则为:oss://bucket/object,其中 bucket和当前 Project 在同一区域的 OSS桶名, object为文件路径。
TargetUri string Y 加水印后图片保存到的OSS URI,如 oss://imm-test/testcases/test.jpg OSS地址规则为:oss://bucket/object,其中 bucket和当前 Project 在同一区域的 OSS 桶名, object 为文件路径。
WatermarkUri string N 作为水印的图片OSS URI,和Content字段二选一。如oss://imm-test/testcases/test.jpg OSS 地址规则为:oss://bucket/object,其中bucket和当前 Project 在同一区域的OSS桶名, object为文件路径。
ImageQuality int N 输出图片的质量,范围:[70,100],质量越高,图片尺寸越大,水印解析质量越高。默认90。
TargetImageType string N 加水印后图片的存储格式,可选值:jpg / png,默认 jpg 。
Content string N 作为水印的文字内容。最多 100 字节。和 WatermarkUri二选一。
Model string N 水印算法模型,默认为 FFT ,具体区别见下面的 [算法模型]一节。

算法模型

我们目前提供三种模型,默认是 FFT 。但对大部分情况,我们推荐您使用 DWT 。具体区别见下。

注意:对同一张图片,添加盲水印 / 解析盲水印 时必须使用同一个算法,否则无法进行解析。

模型名称 解码时是否需要原图 抗攻击能力 计算速度 限制
FFT Y 较弱 一般 对色彩不够丰富的图片(如线框图),加水印后可能图片会泛黄。
FFT-FULL Y 一般 比 FFT 泛黄概率小些,速度会降低。
DWT N 较好 任意大小水印都可以用,但有效水印信息为64x64的二值图,无论输入何种水印图,算法都会先变换为64x64的二值图,所以当输入彩色水印或者非常大的水印时会有信息损失。被加水印的图片大小不能过小,短边需超过 128 像素。

返回参数

Parameter Type Comment
RequestId string 该次请求的唯一识别码。
TargetUri string 图片 URI

示例

请求示例

POST https://imm.cn-shanghai.aliyuncs.com
?Action=EncodeBlindWatermark
&Project=test-project
&ImageUri=oss://imm-test/testcases/test.jpg
&TargetUri=oss://imm-test/testcases/output.jpg
&WatermarkUri=oss://imm-test/testcases/watermark.jpg
...
            

此处的示例,目的是展示关键参数,还需要其他的公共参数才能正常调用,推荐使用SDK来发送API。

成功返回示例

{
  "TargetUri": "oss://imm-test/testcases/output.jpg",
  "RequestId": "577F3113-21FF-4F55-BCBB-206800DB6460"
}
            

若在使用中有疑问,请参考FAQ,或者进入钉钉用户群 实时交流。