项目需要做两张图像比较的差,感觉Python用起来很方便,手头正好有OpenCV。红绿代表插值正负,为了更好的可视化,差值均放大10倍显示。
def clmap(v, k, upBound):
#mul and clamp
val = v * k
if
return
else:
return
'B_Tri.bmp'
#
'B_RT.bmp'
#
'dif_'
# read as color image
img_2 = cv2.imread(inImage_2)
dif = img_1.copy()
# dif image for show only
0]
#get width
1]
#get height
for i
in
for j
in
#dif[i, j] = [128,0,0] # b g r
#print img_1[i,j]-img_2[i,j]
0])-int(img_2[i,j][
0])
if diff <
0:
0,clmap(abs(diff),
10,
255),
0]
elif diff >
0:
0,
0, clmap(abs(diff),
10,
255)]
else:
0]
3
print
print
'different data:'
print
'max : ', dif.max()
print
'min : ', dif.min()
print
'mean : ', dif.mean()
cv2.imwrite(dif_img, show_dif)
'_dif',show_dif)
0)
cv2.destroyAllWindows()
image1
image2
dif