Skip to content

Commit

Permalink
更新了GUIv0.1, 同时去除了对scipy的依赖
Browse files Browse the repository at this point in the history
  • Loading branch information
fire-keeper committed Jul 24, 2019
1 parent 2ada455 commit ed5885d
Show file tree
Hide file tree
Showing 48 changed files with 22,349 additions and 11 deletions.
7 changes: 3 additions & 4 deletions BlindWatermark/BlindWatermark.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import numpy as np
import cv2
from scipy.fftpack import dctn,idctn
from pywt import dwt2,idwt2
import os

Expand Down Expand Up @@ -114,7 +113,7 @@ def block_add_wm(self,block,index,i):
i = i%(self.wm_shape[0]*self.wm_shape[1])

wm_1 = self.wm_flatten[i]
block_dct = dctn(block,norm='ortho')
block_dct = cv2.dct(block)
block_dct_flatten = block_dct.flatten().copy()

block_dct_flatten = block_dct_flatten[index]
Expand All @@ -135,7 +134,7 @@ def block_add_wm(self,block,index,i):
block_dct_flatten[index] = block_dct_flatten.copy()
block_dct = block_dct_flatten.reshape(self.block_shape)

return idctn(block_dct,norm='ortho')
return cv2.idct(block_dct)



Expand Down Expand Up @@ -199,7 +198,7 @@ def embed(self,filename):
cv2.imwrite(filename,embed_img)

def block_get_wm(self,block,index):
block_dct = dctn(block,norm='ortho')
block_dct = cv2.dct(block)
block_dct_flatten = block_dct.flatten().copy()
block_dct_flatten = block_dct_flatten[index]
block_dct_shuffled = block_dct_flatten.reshape(self.block_shape)
Expand Down
3 changes: 2 additions & 1 deletion BlindWatermark/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from .BlindWatermark import watermark
from .ncc import NCC
from .ncc import test_ncc
from .ncc import test_ncc
from .psnr import test_psnr
16 changes: 16 additions & 0 deletions BlindWatermark/psnr.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import cv2
import numpy as np


def PSNR(img1, img2):
mse = np.mean( (img1/255. - img2/255.) ** 2 )
if mse < 1.0e-10:
return 100
PIXEL_MAX = 1
return 20 * np.log10(PIXEL_MAX / np.sqrt(mse))

def test_psnr(filename1,filename2):
a = cv2.imread(filename1)
b = cv2.imread(filename2)
for i in range(3):
print(PSNR(a[:,:,i],b[:,:,i]))
58 changes: 58 additions & 0 deletions GUI/BlindWatermark.e4p
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Project SYSTEM "Project-5.1.dtd">
<!-- eric project file for project BlindWatermark -->
<!-- Saved: 2019-07-24, 13:13:32 -->
<!-- Copyright (C) 2019 , -->
<Project version="5.1">
<Language>en_US</Language>
<Hash>7bde8d649fd64b72d503b054eaf224a7b1a954e8</Hash>
<ProgLanguage mixed="0">Python3</ProgLanguage>
<ProjectType>PyQt5</ProjectType>
<Version>0.1</Version>
<Author></Author>
<Email></Email>
<Eol index="0"/>
<Sources>
<Source>Ui_about.py</Source>
<Source>Ui_main_win.py</Source>
<Source>Ui_tab.py</Source>
<Source>__init__.py</Source>
<Source>img/about_sources_rc.py</Source>
<Source>img/sources_rc.py</Source>
<Source>main_win.py</Source>
<Source>tab.py</Source>
</Sources>
<Forms>
<Form>about.ui</Form>
<Form>main_win.ui</Form>
<Form>tab.ui</Form>
</Forms>
<Resources>
<Resource>img/about_sources.qrc</Resource>
<Resource>img/sources.qrc</Resource>
</Resources>
<Vcs>
<VcsType>None</VcsType>
</Vcs>
<FiletypeAssociations>
<FiletypeAssociation pattern="*.e4p" type="OTHERS"/>
<FiletypeAssociation pattern="*.idl" type="INTERFACES"/>
<FiletypeAssociation pattern="*.md" type="OTHERS"/>
<FiletypeAssociation pattern="*.proto" type="PROTOCOLS"/>
<FiletypeAssociation pattern="*.py" type="SOURCES"/>
<FiletypeAssociation pattern="*.py3" type="SOURCES"/>
<FiletypeAssociation pattern="*.pyw" type="SOURCES"/>
<FiletypeAssociation pattern="*.pyw3" type="SOURCES"/>
<FiletypeAssociation pattern="*.qm" type="TRANSLATIONS"/>
<FiletypeAssociation pattern="*.qrc" type="RESOURCES"/>
<FiletypeAssociation pattern="*.rst" type="OTHERS"/>
<FiletypeAssociation pattern="*.ts" type="TRANSLATIONS"/>
<FiletypeAssociation pattern="*.txt" type="OTHERS"/>
<FiletypeAssociation pattern="*.ui" type="FORMS"/>
<FiletypeAssociation pattern="GNUmakefile" type="OTHERS"/>
<FiletypeAssociation pattern="Makefile" type="OTHERS"/>
<FiletypeAssociation pattern="README" type="OTHERS"/>
<FiletypeAssociation pattern="README.*" type="OTHERS"/>
<FiletypeAssociation pattern="makefile" type="OTHERS"/>
</FiletypeAssociations>
</Project>
Loading

0 comments on commit ed5885d

Please sign in to comment.