OpenCV For Python入门10 |
您所在的位置:网站首页 › opencv10安装 › OpenCV For Python入门10 |
通过按位异或运算就可以实现图像的加密与解密。加密:原始图像与秘钥图像按位异或运算。解密:将加密后的图像与秘钥图像进行按位异或,可以实现解密。 基本原理 案例说明 实战演示 基本原理异或运算是一种半加运算。只加不进。 在二进制中,体现的就是xor(1,1) = 0 这里,借用一本书上的例子进行讲解。 首先是加密过程: 解密过程类似,这里不再赘述。 实战演示例: 甲方和乙方秘密写上一个计划,以一张图片的形式传递消息,只有双方有秘钥。现假设你窃取了原图和秘钥,请你对其加密和解密。 import cv2 import numpy as np mimi = cv2.imread('mimi.jpg', 0) # 原图 r, c = mimi.shape key = np.random.randint(0, 256, size=[r, c], dtype=np.uint8) # 秘钥 jiami = cv2.bitwise_xor(mimi, key) jiemi = cv2.bitwise_xor(jiami, key) cv2.imshow('yuantu', mimi) cv2.imshow('key', key) cv2.imshow('jiami', jiami) cv2.imshow('jiemi', jiemi) cv2.waitKey()效果:
素材:mimi.jpg
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |