提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
在前面章,我们介绍了什么是图像的灰度变换,以及灰度变换中的图像反转,对数变换和幂律变换。图像变换的函数式可以表示如下: 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)<x1x1≤f(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

最低0.47元/天 解锁文章
999

被折叠的 条评论
为什么被折叠?



