1. 基本原理
對數(shù)變換,屬于非線性變換,變換關(guān)系如下(舉例):

表達(dá)式形式如下:
我們通過二次導(dǎo)數(shù)可知,隨著輸入 f 的增大, 越來越小,即
變得越來越平緩,其圖像含義是處于前段的像素值寬度邊框,越往后越來越窄,即圖片整體的亮度提升,越暗的提升越明顯。
2. 使用場景
可用于提升圖片亮度。
3. 代碼示例
考慮如下灰度圖像:

代碼如下:
import cv2 as cv
import numpy as np
from math import *
import matplotlib.pyplot as plt
# 按灰度讀取一張圖片
img = cv.imread("cell.png",cv.IMREAD_GRAYSCALE)
dst = (50 * np.log(1 + img)).astype('uint8')
plt.figure()
plt.subplot(2,2,1)
plt.imshow(img, cmap='gray')
plt.subplot(2,2,2)
plt.imshow(dst, cmap='gray')
plt.subplot(2,2,3)
plt.hist(img.ravel(), 256, [0, 256])
plt.subplot(2,2,4)
plt.hist(dst.ravel(), 256, [0, 256])
plt.show()
輸出結(jié)果如下:

通過觀察直方圖我們發(fā)現(xiàn),處理后的圖像的像素值分布右移,對比度變化,圖像變得更加更亮。