def extract(self,ori_wmimage,wm, key=None):
'''
??LSB??
'''
#???rgb?????????
if len(ori_wmimage.shape)==3:
wmimage = ori_wmimage[:,:,0]
else:
wmimage = ori_wmimage
#???????
signature = self._gene_signature(wm,key).reshape((16,16))
#???????
ext_sigs = self.ext_sig(wmimage,size=16)
#ext_sigs.extend(self.ext_sig(np.rot90(wmimage,1)))
#ext_sigs.extend(self.ext_sig(np.rot90(wmimage,2)))
#ext_sigs.extend(self.ext_sig(np.rot90(wmimage,3)))
#?????
similarity = 0
for sig in ext_sigs:
print(sig)
print(signature)
one_similarity = list(np.array(sig.flatten()) - signature.flatten()).count(0) / len(signature.flatten())
#logging.info('????? : {}'.format(one_similarity))
similarity = max(similarity,one_similarity )
break
logging.debug('???????????????%f (1???0?????????0.7)' % (similarity))
return similarity
评论列表
文章目录