图像分段线性变化_Python 图像处理实战 | 图像的灰度非线性变换之对数变换、伽马变换...

213a20bf11d1f9d8bbec3ea09a18ac8d.png

作者 | 杨秀璋

来源 | CSDN博客

责编 | 夕颜

头图 | 付费下载自视觉中国

出品 | CSDN(ID:CSDNnews)

本篇文章主要讲解非线性变换,使用自定义方法对图像进行灰度化处理,包括对数变换和伽马变换。本文主要讲解灰度线性变换,基础性知识希望对你有所帮助。

1.图像灰度非线性变换:DB=DA×DA/255

2.图像灰度对数变换

3.图像灰度伽玛变换

59e2be2ca03382920fda8f41d4b26f66.png

图像灰度非线性变换:DB=DA×DA/255

图像的灰度非线性变换主要包括对数变换、幂次变换、指数变换、分段函数变换,通过非线性关系对图像进行灰度处理,下面主要讲解三种常见类型的灰度非线性变换。

原始图像的灰度值按照DB=DA×DA/255的公式进行非线性变换,其代码如下:

 1# -*- coding: utf-8 -*-
2import cv2
3import numpy as np
4import matplotlib.pyplot as plt
5
6#读取原始图像
7img = cv2.imread('miao.png')
8
9#图像灰度转换
10grayImage = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
11
12#获取图像高度和宽度
13height = grayImage.shape[0]
14width = grayImage.shape[1]
15
16#创建一幅图像
17result = np.zeros((height, width), np.uint8)
18
19#图像灰度非线性变换:DB=DA×DA/255
20for i in range(height):
21 for j in range(width):
22 gray = int(grayImage[i,j])*int(grayImage[i,j]) / 255
23 result[i,j] = np.uint8(gray)
24
25#显示图像
26cv2.imshow("Gray Image
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页