Skip to content

ww23/BlindWatermark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BlindWatermark

Build Status

在图片上加隐藏的水印

  • 原理
    • Encode:
      原图 --- 变换 ---> 变换域 + 水印 --- 逆变换 ---> 带水印图
    • Decode:
      带水印图 --- 变换 ---> 变换域

Usage

Usage: java -jar BlindWatermark.jar <commands> [args...]
    commands:
        encode <option> <input> <watermark> <output>
        decode <option> <input> <output>
    encode options:
        -c discrete cosine transform
        -f discrete fourier transform
        -i image watermark
        -t text  watermark
    decode options:
        -c discrete cosine transform
        -f discrete fourier transform
    example:
        encode -ft input.png watermark output.png
        decode -fi input.png output.png

Build

gradle build

Demo

原图:

image

加文字水印(DCT):
java -jar BlindWatermark.jar encode -ct gakki-src.png 测试test gakki-dct-text-ec.jpg

image

文字水印解码(DCT):
java -jar BlindWatermark.jar decode -c gakki-dct-text-ec.jpg gakki-dct-text-dc.jpg

image

加图片水印(DCT):
java -jar BlindWatermark.jar encode -ci gakki-src.png watermark.png gakki-dct-img-ec.jpg

image

图片水印解码(DCT):
java -jar BlindWatermark.jar decode -c gakki-dct-img-ec.jpg gakki-dct-img-dc.jpg

image

加文字水印(DFT):
java -jar BlindWatermark.jar encode -ft gakki-src.png 测试test gakki-dft-text-ec.png

image

文字水印解码(DFT):
java -jar BlindWatermark.jar decode -f gakki-dft-text-ec.png gakki-dft-text-dc.png

image

加图片水印(DFT):
java -jar BlindWatermark.jar encode -fi gakki-src.png watermark.png gakki-dft-img-ec.png

image

图片水印解码(DFT):
java -jar BlindWatermark.jar decode -f gakki-dft-img-ec.png gakki-dft-img-dc.png

image

Notice

DFT 输出图片格式必须要是 PNG

Reference

License

Apache-2.0