3.4 图像灰度变换之分段线性变换

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

在前面章,我们介绍了什么是图像的灰度变换,以及灰度变换中的图像反转,对数变换和幂律变换。图像变换的函数式可以表示如下: g ( x , y ) = F ( f ( x , y ) ) f ( x , y ) 是位于图像点 ( x , y ) 处的像素的值 g(x,y)=F(f(x,y))\quad f(x,y)是位于图像点(x,y)处的像素的值 g(x,y)=F(f(x,y))f(x,y)是位于图像点(x,y)处的像素的值这一章我们来讨论图像的分段线性变换。


1. 原理

分段线性变换,顾名思义就是针对不同灰度级采用不同的变换函数,变换函数如下:
g ( x , y ) = { F 1 ( f ( x , y ) ) f ( x , y ) < x 1 F 2 ( f ( x , y ) ) x 1 ≤ f ( x , y ) < x 2 F 3 ( f ( x , y ) ) f ( x , y ) ≥ x 2 g(x,y) = \begin{cases} F_1(f(x,y)) & f(x,y)<x1 \\ F_2(f(x,y)) & x1 \leq f(x,y) < x2 \\ F_3(f(x,y)) & f(x,y) \geq x2 \\ \end{cases} g(x,y)= F1(f(x,y))F2(f(x,y))F3(f(x,y))f(x,y)<x1x1f(x,y)<x2f(x,y)x2 其中 f ( x , y ) 是位于图像点 ( x , y ) 处的像素的值 , g ( x , y ) 是变换后的像素值, F 1 , F 2 , F 3 是不同定义域的变换函数 其中\quad f(x,y)\quad 是位于图像点(x,y)处的像素的值, \quad g(x,y)是变换后的像素值,F_1,F_2,F_3是不同定义域的变换函数 其中f(x,y)是位于图像点(x,y)处的像素的值,g(x,y)是变换后的像素值,F1,F2,F3是不同定义域的变换函数

1.1 代码实现

import numpy as np
import matplotlib.pyplot as plt


def linear(p1, p2, x):
    """
    计算通过两个点定义的直线函数在给定定义域内的值域。
    参数:
    p1: 第一个点的坐标 (x1, y1)
    p2: 第二个点的坐标 (x2, y2)
    x: 定义域的范围
    """

    # 计算斜率和截距
    k = (p2[1] - p1[1]) / (p2[0] - p1[0])
    b = p1[1] - k 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值