图像的像素乘法、除法运算

像素乘法运算

  1. result = numpy.dot (a , b) 函数:矩阵乘法
    当a * b大于255时:a * b = mod(a * b , 256)
import numpy as np

# 随机生成两个像素矩阵,并进行“numpy.dot(a,b)”的操作
image1 = np.random.randint(0, 256, size=[3, 4], dtype=np.uint8)
image2 = np.random.randint(0, 256, size=[4, 3], dtype=np.uint8)
image3 = np.dot(image1, image2)
print('image1=\n', image1)
print('image2=\n', image2)
print('image3=\n', image3)

运行结果:
图像的像素乘法、除法运算_第1张图片
第一行第一列:
199144+7382+252122+3364 = 67498
67498 % 256 = 170

  1. result = cv2.multiply (a , b) 函数:点乘
    当a * b大于255时:a * b = 255
import numpy as np
import cv2 as cv

# 随机生成两个像素矩阵,并进行“cv2.multiply(a,b)”的操作
image1 = np.random.randint(0, 256, size=[4, 4], dtype=np.uint8)
image2 = np.random.randint(0, 256, size=[4, 4], dtype=np.uint8)
image3 = cv.multiply(image1, image2)
print('image1=\n', image1)
print('image2=\n', image2)
print('image3=\n', image3)

运行结果:
图像的像素乘法、除法运算_第2张图片
第一行第一列:
231 * 201 = 46431 > 255 所以结果为255
第一行第四列:
1 * 157 = 157 < 255 所以结果为157

像素除法运算

  1. result = cv2.divide (a , b) 函数 : 点除
    得数结果要取整(四舍五入)
import numpy as np
import cv2 as cv

# 随机生成两个像素矩阵,并进行“cv2.divide(a,b)”的操作
image1 = np.random.randint(0, 256, size=[4, 4], dtype=np.uint8)
image2 = np.random.randint(0, 256, size=[4, 4], dtype=np.uint8)
image3 = cv.divide(image1, image2)
print('image1=\n', image1)
print('image2=\n', image2)
print('image3=\n', image3)

运行结果:
图像的像素乘法、除法运算_第3张图片
第一行第一列:
138 / 95 = 1.452 … 取整 = 1

你可能感兴趣的:(python,机器学习,numpy,深度学习,random)