简洁翻译版.
OpenCV BGR分布
序号 | 通道 | 描述 |
---|---|---|
1 | R | 8位无符号整型,取值0~255 |
2 | G | 16位无符号整体性,取值0~65535 |
3 | B | 32位浮点型数据,取值0~1 |
4 | A | 色彩空间,取值0~1 |
1 RGB ⟺ \iff ⟺ GRAY
1.0 RGB[A] ↦ \mapsto ↦ GRAY
G r a y = 0.299 ∗ R + 0.587 ∗ G + 0.114 ∗ B Gray=0.299*R + 0.587*G + 0.114*B Gray=0.299∗R+0.587∗G+0.114∗B
1.2 GRAY ↦ \mapsto ↦ RGB[A]
{ R = G r a y G = G r a y B = G r a y A = m a x ( C h a n n e l R a n g e ) \begin{cases}R=Gray\\G=Gray\\B=Gray\\A=max(ChannelRange)\end{cases} ⎩⎪⎪⎪⎨⎪⎪⎪⎧R=GrayG=GrayB=GrayA=max(ChannelRange)
2 RGB ⟺ \iff ⟺ CIE XYZ.Rec709 with D65 white point
2.1 RGB ↦ \mapsto ↦ XYZ
[ X Y Z ] = [ 0.412453 0.357580 0.180423 0.212671 0.715160 0.072169 0.019334 0.119193 0.950227 ] ⋅ [ R G B ] \begin{bmatrix} X \\ Y \\ Z\end{bmatrix}=\begin{bmatrix}0.412453& 0.357580& 0.180423 \\ 0.212671& 0.715160& 0.072169 \\ 0.019334& 0.119193& 0.950227\end{bmatrix}\cdot \begin{bmatrix}R\\ G\\ B \end{bmatrix} ⎣⎡XYZ⎦⎤=⎣⎡0.4124530.2126710.0193340.3575800.7151600.1191930.1804230.0721690.950227⎦⎤⋅⎣⎡RGB⎦⎤
2.2 XYZ ↦ \mapsto ↦ RGB
[ R G B ] = [ 0.412453 0.357580 0.180423 0.212671 0.715160 0.072169 0.019334 0.119193 0.950227 ] ⋅ [ X Y Z ] \begin{bmatrix}R\\ G\\ B \end{bmatrix}=\begin{bmatrix}0.412453& 0.357580& 0.180423 \\ 0.212671& 0.715160& 0.072169 \\ 0.019334& 0.119193& 0.950227\end{bmatrix}\cdot \begin{bmatrix} X \\ Y \\ Z\end{bmatrix} ⎣⎡RGB⎦⎤=⎣⎡0.4124530.2126710.0193340.3575800.7151600.1191930.1804230.0721690.950227⎦⎤⋅⎣⎡XYZ⎦⎤
3 RGB ⟺ \iff ⟺YCrCb JPEG(or YCC)
3.1 RGB ↦ \mapsto ↦ YCrCb
{ Y = 0.299 ∗ R + 0.587 ∗ G + 0.114 ∗ B C r = ( R − Y ) ∗ 0.713 + δ C b = ( B − Y ) ∗ 0.564 + δ \begin{cases}Y=0.299*R + 0.587*G + 0.114*B\\ Cr=(R-Y)*0.713 + \delta\\Cb=(B-Y)*0.564+\delta \end{cases} ⎩⎪⎨⎪⎧Y=0.299∗R+0.587∗G+0.114∗BCr=(R−Y)∗0.713+δCb=(B−Y)∗0.564+δ
3.2 YCrCb ↦ \mapsto ↦RGB
{
R
=
Y
+
1.403
∗
(
C
r
−
δ
)
G
=
Y
−
0.714
∗
(
C
r
−
δ
)
−
0.344
∗
(
C
b
−
δ
)
B
=
Y
+
1.773
∗
(
C
b
−
δ
)
\begin{cases}R=Y + 1.403*(Cr-\delta)\\ G=Y-0.714*(Cr-\delta)-0.344*(Cb-\delta) \\B=Y + 1.773*(Cb-\delta) \end{cases}
⎩⎪⎨⎪⎧R=Y+1.403∗(Cr−δ)G=Y−0.714∗(Cr−δ)−0.344∗(Cb−δ)B=Y+1.773∗(Cb−δ)
其中,
δ
=
{
128
8位图像
32768
16位图像
0.5
浮点型数据图像
\delta=\begin{cases}128 &\text{8位图像} \\ 32768&\text{16位图像}\\0.5&\text{浮点型数据图像}\end{cases}
δ=⎩⎪⎨⎪⎧128327680.58位图像16位图像浮点型数据图像
4 RGB ⟹ \implies ⟹ HSV
8位和16位RGB图像转为HSV图像.
V
=
m
a
x
(
R
,
G
,
B
)
V=max(R,G,B)
V=max(R,G,B)
S
=
{
V
−
m
i
n
(
R
,
G
,
B
)
if
V
≠
0
0
otherwise
S=\begin{cases}V-min(R,G,B) &\text{if $V$ $\not=$0}\\ 0 & \text{otherwise}\end{cases}
S={V−min(R,G,B)0if V =0otherwise
H
=
{
60
∗
(
G
−
B
)
/
(
V
−
m
i
n
(
R
,
G
,
B
)
)
if
V
=
R
120
+
60
∗
(
B
−
R
)
/
(
V
−
m
i
n
(
R
,
G
,
B
)
)
if
V
=
G
240
+
60
∗
(
R
−
G
)
/
(
V
−
m
i
n
(
R
,
G
,
B
)
)
if
V
=
B
H=\begin{cases}60*(G-B)/(V-min(R,G,B))&\text{if $V$ = $R$}\\ 120+60*(B-R)/(V-min(R,G,B))&\text{if $V$ = $G$} \\ 240+60*(R-G)/(V-min(R,G,B)) &\text {if $V$ = $B$}\end{cases}
H=⎩⎪⎨⎪⎧60∗(G−B)/(V−min(R,G,B))120+60∗(B−R)/(V−min(R,G,B))240+60∗(R−G)/(V−min(R,G,B))if V = Rif V = Gif V = B
if
H
H
H <
0
0
0,输出
{
0
≤
V
≤
1
0
≤
S
≤
1
0
≤
H
≤
360
\begin{cases}0 \leq V \leq 1 \\0 \leq S \leq 1\\0 \leq H \leq 360 \end{cases}
⎩⎪⎨⎪⎧0≤V≤10≤S≤10≤H≤360
5 RGB ⟹ \implies ⟹ CIE Lab
8位和16位RGB图像转为浮点型和标量格式图像.
[
X
Y
Z
]
=
[
0.412453
0.357580
0.180423
0.212671
0.715160
0.072169
0.019334
0.119193
0.950227
]
⋅
[
R
G
B
]
\begin{bmatrix} X \\ Y \\ Z\end{bmatrix}=\begin{bmatrix}0.412453& 0.357580& 0.180423 \\ 0.212671& 0.715160& 0.072169 \\ 0.019334& 0.119193& 0.950227\end{bmatrix}\cdot \begin{bmatrix}R\\ G\\ B \end{bmatrix}
⎣⎡XYZ⎦⎤=⎣⎡0.4124530.2126710.0193340.3575800.7151600.1191930.1804230.0721690.950227⎦⎤⋅⎣⎡RGB⎦⎤
{ X = X / X n , X n = 0.950456 Z = Z / Z n , Z n = 1.088754 \begin{cases}X=X/X_n, &\text X_n=0.950456 \\Z=Z/Z_n, &\text Z_n=1.088754 \end{cases} {X=X/Xn,Z=Z/Zn,Xn=0.950456Zn=1.088754
L
=
{
116
∗
Y
1
/
3
−
16
,
Y>0.008856
903.3
∗
Y
,
Y
≤
0.008856
L=\begin{cases}116*Y^{1/3}-16, &\text{Y>0.008856} \\903.3*Y, &\text{Y $\leq$ 0.008856} \end{cases}
L={116∗Y1/3−16,903.3∗Y,Y>0.008856Y ≤ 0.008856
{
a
=
500
(
f
(
X
)
−
f
(
Y
)
)
+
δ
b
=
200
(
f
(
Y
)
−
f
(
Z
)
)
+
δ
\begin{cases}a=500(f(X)-f(Y))+\delta \\b=200(f(Y)-f(Z))+\delta \end{cases}
{a=500(f(X)−f(Y))+δb=200(f(Y)−f(Z))+δ
其中,
f
(
t
)
=
{
t
1
/
3
,
t>0.008856
7.787
∗
t
+
16
/
116
,
t
≤
0.008856
f(t)=\begin{cases}t^{1/3}, &\text{t>0.008856}\\7.787*t+16/116, &\text{t$\leq$0.008856}\end{cases}
f(t)={t1/3,7.787∗t+16/116,t>0.008856t≤0.008856
δ
=
{
128
,
8位图像
0
,
浮点型图像
\delta=\begin{cases}128, &\text{8位图像}\\0, &\text{浮点型图像}\end{cases}
δ={128,0,8位图像浮点型图像
{
0
≤
L
≤
100
−
127
≤
a
≤
127
−
127
≤
b
≤
127
\begin{cases}0 \leq L \leq 100 \\-127 \leq a \leq 127\\-127 \leq b \leq 127 \end{cases}
⎩⎪⎨⎪⎧0≤L≤100−127≤a≤127−127≤b≤127
5 RGB ⟹ \implies ⟹ CIE Luv
[
X
Y
Z
]
=
[
0.412453
0.357580
0.180423
0.212671
0.715160
0.072169
0.019334
0.119193
0.950227
]
⋅
[
R
G
B
]
\begin{bmatrix} X \\ Y \\ Z\end{bmatrix}=\begin{bmatrix}0.412453& 0.357580& 0.180423 \\ 0.212671& 0.715160& 0.072169 \\ 0.019334& 0.119193& 0.950227\end{bmatrix}\cdot \begin{bmatrix}R\\ G\\ B \end{bmatrix}
⎣⎡XYZ⎦⎤=⎣⎡0.4124530.2126710.0193340.3575800.7151600.1191930.1804230.0721690.950227⎦⎤⋅⎣⎡RGB⎦⎤
L
=
{
116
∗
Y
1
/
3
−
16
,
Y>0.008856
903.3
∗
Y
,
Y
≤
0.008856
L=\begin{cases}116*Y^{1/3}-16, &\text{Y>0.008856} \\903.3*Y, &\text{Y $\leq$ 0.008856} \end{cases}
L={116∗Y1/3−16,903.3∗Y,Y>0.008856Y ≤ 0.008856
{
u
′
=
4
∗
X
/
(
X
+
15
∗
Y
+
3
∗
Z
)
v
′
=
9
∗
Y
/
(
X
+
15
∗
Y
+
3
∗
Z
)
\begin{cases}u'=4*X/(X+15*Y+3*Z)\\v'=9*Y/(X+15*Y+3*Z) \end{cases}
{u′=4∗X/(X+15∗Y+3∗Z)v′=9∗Y/(X+15∗Y+3∗Z)
{
u
=
13
∗
L
∗
(
u
′
−
u
n
)
,
u
n
=
0.19793943
v
=
13
∗
L
∗
(
v
′
−
v
n
)
,
v
n
=
0.46831096
\begin{cases}u=13*L*(u'-u_n), &\text u_n=0.19793943\\v=13*L*(v'-v_n), &\text v_n=0.46831096 \end{cases}
{u=13∗L∗(u′−un),v=13∗L∗(v′−vn),un=0.19793943vn=0.46831096
{
0
≤
L
≤
100
−
134
≤
u
≤
134
−
140
≤
v
≤
122
\begin{cases}0 \leq L \leq 100 \\-134 \leq u \leq 134\\-140 \leq v \leq 122 \end{cases}
⎩⎪⎨⎪⎧0≤L≤100−134≤u≤134−140≤v≤122