# 曲线调整图层：拖一个点为什么会同时改变明暗和对比

从横轴输入、纵轴输出讲起，理解曲线斜率怎样决定对比度，以及 S 形曲线和黑白场端点分别在做什么

> 调整图层 · 非破坏性编辑 · Photoshop 基础操作 · 约 6 分钟 · 10 月 13 日

## 本篇要点

1. 曲线的横轴是输入亮度（原图值），纵轴是输出亮度（改后值）；刚打开时的 45° 对角线是一张“输入等于输出”的对照表，所以画面不变。
2. 拖一个点不是给所有像素加同一个数，而是把某个输入值映射成新的输出值，其余亮度按曲线形状被连带着安排。
3. 曲线某一段的斜率等于“输出跨度 ÷ 输入跨度”：大于 1 表示这段亮度被摊开、对比度提高，小于 1 表示被压缩、对比度降低。
4. 因为两个端点默认钉在 (0,0) 和 (255,255)，抬起中间一点必然把整条线掰弯，所以明暗和对比从来是一起动。
5. 一条曲线能分配的对比度总量固定：在一个亮度区间加对比，就必须在另一个区间减对比，加之前先想清楚细节集中在哪个区间。
6. S 形（压暗暗部、提亮高光）把对比度花在中间调，代价是接近纯黑和纯白的两端变平；反 S 相反，把对比度还给两头。
7. 两个端点分别是黑场和白场：沿横轴往里拖会裁掉最暗或最亮的像素（细节丢失），沿纵轴拖则是抬高黑场或压低白场，得到褪色感。
8. 操作上从调整图层里的曲线入手，锚点控制在 3 到 5 个、幅度宁小勿大，避免斜率突变带来的色带。

---

上一篇讲调整图层，解决的是“改明暗和颜色为什么值得单独记成一层”，没讲具体怎么改。点开“曲线”以后，很多人的反应是懵的：一个方格里一条斜线，不知道手该往哪放，随便一拖画面又亮又灰，赶紧按 Ctrl+Z。

其实曲线是明暗工具里读数最直接的一个，只要抓住一句话：**横轴是改动前的亮度，纵轴是改动后的亮度**。

## 那条斜线代表“什么都没改”

曲线面板里，横轴是输入（原来照片里的亮度值），纵轴是输出（改完之后变成的亮度值）。RGB 图像里两者都是 0 到 255，左下角是纯黑 0，右上角是纯白 255；画面里越亮的地方，在横轴上越靠右[1]。

刚打开时那条线是标准 45° 对角线：0 对应 0，128 对应 128，255 对应 255，每个输入值都原样通过，所以画面一动不动。**它本质上是一张对照表**——横着找到“原来多亮”，竖着看“改成多亮”。

其余部分和上一篇讲的调整图层完全一样：不带像素、参数随时能改、自带全白蒙版、能在蒙版上涂黑取消局部。区别只是它记录的内容从两个滑块变成了这条线。

## 线上的一个点，等于对照表里的一行

在斜线中点（输入 128、输出 128）按住往上拖到 150，意思是：**原来等于 128 的像素，现在按 150 显示。** 面板底部的 Input 和 Output 两个框会同步显示这两个数字[3]。

有两个容易忽略的地方。

第一，这不是“每个像素加 22”，而是“凡是等于 128 的都变成 150”。原来 154 的像素不会被加 22，它有自己的去向。Gerald Bakker 的例子把中点拖到（输入 154，输出 183），那张图里 154 就变成 183[3]。曲线是一条完整的映射，任何输入值都能在图上找到自己的输出值。

第二，你只能拖动线上的点，拖不到的地方由 Photoshop 用平滑曲线连起来。上下两个端点默认钉在 (0, 0) 和 (255, 255)，所以中间那个点被抬起来以后，整条线被掰成一个拱形——**这正是“拖一个点会同时改变明暗和对比”的原因**。

## 斜率就是对比度

要看清这一点，先把平滑的曲线理想化成折线（真实曲线是光滑的，具体数字会略有出入，道理一样）。假设一条曲线经过这几个点：

| 输入 | 输出 |
|---|---|
| 0 | 0 |
| 64 | 40 |
| 192 | 220 |
| 255 | 255 |

算算每一段的斜率，也就是“输出跨度 ÷ 输入跨度”：

- 0 到 64 这段：$\dfrac{40-0}{64-0}=0.63$
- 64 到 192 这段：$\dfrac{220-40}{192-64}\approx 1.41$
- 192 到 255 这段：$\dfrac{255-220}{255-192}\approx 0.56$

斜率小于 1，说明这一段亮度被“挤”到一起；等于 1 是原样通过；大于 1 是被“摊开”。挤在一起就是对比度下降，摊开就是对比度上升。Adobe 文档的说法也是这个意思：曲线上越陡的地方对比度越高，越平的地方越低[1]。

于是可以直接算出画面上会发生什么。取中间调的两个相邻像素 100 和 110，它们落在斜率 1.41 的那段，按 $输出=40+(输入-64)\times1.406$ 计算：

- 100 → 90.6
- 110 → 104.7

它们原先相差 10，现在相差约 14，**差别被放大了**，这就是加对比；同时两个像素都稍微变暗，因为它们落在曲线与对角线交点（大约 128）的左边。

再看暗部那段，斜率 0.63。像素 20 和 30 变成 12.5 和 18.75，差距从 10 掉到 6.25——不光变暗，彼此的差别也被压扁，对比度降低。

合起来就清楚了：**拖动一个点，是在把对比度从一个亮度区间挪到另一个亮度区间。** 一条曲线能分配的对比度总量是固定的，你在中间加了多少，两头就减掉多少[4]。所以加对比之前该想的是：我真正在乎的细节集中在哪个亮度区间？把陡的那一段对准直方图上像素最密集的位置，效果最明显[5]。

![S 形曲线的形状：中间最陡的一段加对比，两侧变平的地方减对比](https://www.davidkunzman.net/articles/photography/histograms/s_curve_shape_with_areas.jpg)

## S 形：把对比度花在中间调

现在回头看那个最常见的操作：**提亮高光、压暗暗部、两端不动**。曲线被拉成一个 S 形——左半段往下（暗的更暗），右半段往上（亮的更亮），中间那一段自然变陡[3][6]。这就是“增加对比度”的经典做法，也是曲线比 Levels 强的地方：Levels 只有一个灰滑块，动它只能整体移动明暗，没法一边压暗暗部一边提亮高光[3]。

代价正是上面算过的两端：S 形两头变平，本来接近纯白和纯黑的地方差别反而被挤掉。所以一张本来就拍得很硬的照片（强光下的地面、发白的天空）再加 S 形，亮部会像蒙了一层那样发灰。这种时候该用反 S——压暗高光、提亮暗部，把对比度还给两头[3][4]。普通照片上 S 形通常比反 S 好用，因为大部分信息在中间调；但判断依据永远是“想要的细节落在哪个亮度区间”，不是“S 形一定好看”。

## 两个端点：黑场与白场

端点也能动，它们的名字叫黑场和白场。

- **沿横轴把左下端点往右拖**：比如拖到（输入 20，输出 0）。20 以下的所有像素一律变成 0，它们之间的差别被裁掉——暗部更黑更“实”，代价是最暗处的细节丢失。
- **沿横轴把右上端点往左拖**：比如拖到（输入 230，输出 255），230 以上全部变成纯白，高光被修剪[3]。
- **沿纵轴拖是相反的效果**：把左下端点沿左边缘向上拖到（输入 0，输出 20），画面里黑就不再是纯黑，整体像蒙了层灰；把右上端点沿右边缘往下拖，白就不再是纯白。

这就是面板里“黑场 / 白场”滑块在做的事——也可以直接拖图形下方的小三角，或者用吸管在画面上点最黑、最白的地方来设定[1]。它们改的是亮度范围的起点和终点，而不是“某个亮度变成什么”，和拖中间的点是两类操作。

## 上手清单

- 从图层面板底部的“创建新的填充或调整图层”里选“曲线”，不要走 Image > Adjustments：前者随时能改、能关、能删，后者一确定就写进像素[2]。
- 常用动作就三个：中央点往上拖（整体提亮）、左右各加一点拉成 S（加对比）、拖两个端点定黑白场。
- 先想清楚问题出在哪个亮度区间，再决定锚点加在哪。不想让某个点被牵连，就先加个锚点把它钉住。
- 点加多了，拖出图表外就能删；Adobe 文档写的上限是 14 个[1]，但真要精确控制，3 到 5 个通常就够。
- 幅度宁小勿大。相邻锚点之间斜率突变，会让本来平滑渐变的区域（天空、墙面）出现色带[4]。

顺带说明一下范围：面板顶部可以把曲线限制在单个颜色通道上，那是调偏色的另一件事，这篇不展开。

## 术语表

- 输入值 / 输出值：横轴记录像素改动前的亮度，纵轴记录改动后的亮度，曲线就是这两者之间的对照表。
- 曲线斜率：某一段曲线“输出跨度 ÷ 输入跨度”的值，大于 1 表示这段亮度被摊开（对比度提高），小于 1 表示被压缩（对比度降低）。
- S 形曲线：压暗暗部、提亮高光而两端不动，把对比度集中到中间调的画法；反 S 则把对比度还给高光和暗部。
- 黑场 / 白场：亮度范围的起点和终点；把两个端点沿横轴往里拖会把最暗或最亮的像素压成纯黑纯白，属于裁剪。
- 对比度预算：一条曲线只能重新分配对比度，不能凭空增加，某处加多少，别处就减多少。

## 来源

1. [Adobe 官方帮助：Using the Curves adjustment in Photoshop — 横轴输入 / 纵轴输出、越陡对比越高越平越低、拖点向左向右改变对比、最多 14 个控制点、黑白点滑块与吸管](https://helpx.adobe.com/photoshop/using/curves-adjustment.html)
2. [Adobe 官方帮助：Work with adjustment layers — 在调整图层里创建曲线，设置位于属性面板，不改动像素数据](https://helpx.adobe.com/photoshop/desktop/create-manage-layers/color-adjustment-fill-layers/work-with-adjustment-and-fill-layers.html)
3. [Gerald Bakker: Exposure and Contrast 3 – Curves — 输入 / 输出数值的具体例子（154 变 183）、端点拖到输入 230 后 230 以上全部映射为同一值、S 形为什么 Levels 做不到](https://geraldbakker.nl/psnumbers/curves.html)
4. [Cambridge in Colour: Using the Photoshop Curves Tool — 对比度预算的说法，以及斜率突变容易造成色带](https://www.cambridgeincolour.com/tutorials/photoshop-curves.htm)
5. [David Kunzman: The S-Curve — 陡段把一段输入映射到更大的输出范围（加对比）、平段反之，陡段应对准直方图的高峰](https://www.davidkunzman.net/articles/photography/histograms/part5.php)
6. [GCFGlobal: Photoshop Basics – Levels, Curves and Color — 初学者做 S 形的具体步骤，以及先别动两个端点、用预设起步的建议](https://edu.gcfglobal.org/en/photoshopbasics/levels-curves-and-color/1)

---

原文：https://pangzhengboyin.com/articles/photoshop-curves-input-output-slope-0d69e672

> **庞征博引** · 想学的，慢慢都会
>
> 庞征博引是把想学的东西写成连载的 AI 学习工具。说出想学什么，它会先了解你的基础，再把主题写成一篇篇 5–10 分钟能读完的文章；边读边问，接下来学什么跟着你走。这篇就是这样写出来的。
>
> 开始你自己的连载 → https://pangzhengboyin.com
