除算

V2.4.11, V3.0.0
In [1]:
# -*- coding: utf-8 -*-
import cv2
import numpy as np

#Ipythonで表示用の設定
import matplotlib.pyplot as plt
%matplotlib inline

#画像読込
img1 = cv2.imread("lena.jpg")

#除算用画像生成
img2 = np.ones((512,512,3),dtype='uint8')
img2[0:256,0:256]     =1
img2[256:512,0:256]   =4
img2[0:256,256:512]   =2
img2[256:512,256:512] =3

#画像の除算
dst = cv2.divide(img1,img2)

#OpenCVがBGRなのでRGBに変換
disp_img1  = cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)
disp_dst   = cv2.cvtColor(dst,  cv2.COLOR_BGR2RGB)

print img1[400,400],"/",img2[400,400],"->",dst[400,400],":四捨五入かな。"

#画像表示
plt.figure(figsize=(10,4))
plt.subplot(121)
plt.imshow(disp_img1)
plt.subplot(122)
plt.imshow(disp_dst)
[109 109 187] / [3 3 3] -> [36 36 62] :四捨五入かな。

Out[1]:
<matplotlib.image.AxesImage at 0x57a52b0>
inserted by FC2 system