
blind_watermark圖片盲水印教程免原圖嵌入與提取【免費(fèi)下載鏈接】blind_watermarkBlindInvisible Watermark 圖片盲水印提取水印無須原圖項(xiàng)目地址: https://gitcode.com/GitHub_Trending/bl/blind_watermark畫師把圖發(fā)到網(wǎng)上過幾天發(fā)現(xiàn)被人改成署名轉(zhuǎn)發(fā)最難的是先證明這圖是我畫的。blind_watermark 是一個(gè)用 Python 寫的圖片盲水印工具盲水印單獨(dú)一張帶水印的圖就能把水印讀出來不用拿原圖比對可以在不改變觀感的前提下把文字或圖片藏進(jìn)圖里下面講怎么用、以及各種折騰之后它還能不能扛住。 pip 一行裝好 blind_watermark大多數(shù)人直接裝官方包就夠了依賴只有 numpy、opencv-python、PyWavelets 三樣Python ≥3.5Windows、Linux、macOS 都能跑pip install blind-watermark需要最新開發(fā)版本的話clone 源碼裝git clone https://gitcode.com/GitHub_Trending/bl/blind_watermark進(jìn)倉庫目錄執(zhí)行pip install .。? 嵌入和提取各只需幾步不用原圖Python 里嵌入就是幾次調(diào)用讀原圖、讀水印文本、寫出帶水印的圖。注意記下wm_bit的長度提取時(shí)要用from blind_watermark import WaterMark bwm WaterMark(password_img1, password_wm1) bwm.read_img(pic/ori_img.jpeg) bwm.read_wm(guofei9987 開源萬歲, modestr) bwm.embed(output/embedded.png) len_wm len(bwm.wm_bit) bwm2 WaterMark(password_img1, password_wm1) print(bwm2.extract(output/embedded.png, wm_shapelen_wm, modestr))提取時(shí)只傳帶水印的圖、兩個(gè)密碼和長度原圖不參與輸出就是當(dāng)初嵌入的那串文字。水印內(nèi)容支持三種文字str、圖片img、原始比特流bit。不想寫代碼也有命令行blind_watermark --embed --pwd 1234 pic.jpg 版權(quán)文字 out.png嵌入加--extract --wm_shape N讀出。 原理一句話藏進(jìn)人眼看不見的頻域分量核心思路圖片經(jīng)過 DWT→DCT→SVD 三層頻域變換小波變換、余弦變換、奇異值分解把圖片從像素視角換成頻率視角水印被寫進(jìn)人眼不敏感的高頻分量里。所以肉眼怎么對比都看不出差別但只要高頻信息沒被徹底破壞就能反算出來。這是一筆魯棒性換容量的買賣嵌入的文字越多抗折騰的能力就越低。?? 旋轉(zhuǎn)、裁剪之后水印還在不在示例自帶一套攻擊腳本att.py挑最常見的兩個(gè)場景旋轉(zhuǎn)轉(zhuǎn) 60° 再轉(zhuǎn)回來水印可以完整讀出裁剪/截屏不知道被裁了哪里、縮放了多少倍時(shí)先用 recover.py 的estimate_crop_parameters估出攻擊參數(shù)還原后再提取結(jié)果仍一致上圖是嵌入盲水印后的輸出下圖是旋轉(zhuǎn) 60° 的攻擊效果。完整腳本見 examples/example_str.py椒鹽噪聲、縮放、遮擋、亮度等都有帶斷言的驗(yàn)證。什么場景該用它什么時(shí)候別用適合版權(quán)自證把作者信息、時(shí)間做成文字水印隨作品發(fā)出內(nèi)容溯源給不同渠道嵌不同標(biāo)識(shí)事后可讀出追蹤傳播路徑防偽驗(yàn)證產(chǎn)品圖、證書圖里加一個(gè)看不見的記號(hào)注意平臺(tái)二次壓縮是最大敵人畫質(zhì)被壓得很狠時(shí)提取準(zhǔn)確率會(huì)下降容量有限文字嵌太多會(huì)明顯削弱抗攻擊能力兩個(gè)密碼和wm_bit長度要存好丟了就讀不回來作品被轉(zhuǎn)發(fā)過的人最省事的防身辦法是先給成品打上盲水印。裝好包照著 examples/example_str_multi.py 跑一遍5 分鐘就能得到第一張帶保護(hù)的圖。【免費(fèi)下載鏈接】blind_watermarkBlindInvisible Watermark 圖片盲水印提取水印無須原圖項(xiàng)目地址: https://gitcode.com/GitHub_Trending/bl/blind_watermark創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考