Bootstrap

基于python的数字图像处理--学习笔记(三)

基于python的数字图像处理--学习笔记(三)


前言

进入冈萨雷斯的第三章内容,并用python实现功能。我更改了代码源,之前找到太烂了,代码全是错、、现在使用的代码很清晰,功能也很全。


一、灰度拉伸

灰度拉伸, 也称对比度拉伸, 是一种简单的线性点运算 ,扩展图像的直方图使其充满整个灰度等级范围内.

代码如下(示例):

"""
Created by HenryMa on 2020/8/24
"""

__author__ = 'HenryMa'


import math
# from builtins import range, print
import numpy as np
import cv2


def contrastStretchTransform(image):
    """
    灰度拉伸
    定义: 灰度拉伸, 也称对比度拉伸, 是一种简单的线性点运算.
    作用: 扩展图像的直方图, 使其充满整个灰度等级范围内.
    公式: A = min[f(x, y)], 最小灰度级;
         B = max[f(x, y)], 最大灰度级;
         f(x, y)为输入图像, g(x, y)为输出图像.
    缺点: 如果灰度图像中最小值A=0, 最大值B=255, 则图像没有什么改变.
    """
    # 彩色图像
    h, w, d = image.shape
    new_img = np.zeros((h, w, d), dtype=np.float32)
    A = image.min()
    B = image.max()
    print(A, B)
    for i in range(h):
        for j in range(w):
            for k in range(d):
                new_img[i, j, k] = 255.0 / (B - A) * (image[i, j, k

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;