Colors 如何使用ColorMatrix工具反转图像的颜色?

Colors 如何使用ColorMatrix工具反转图像的颜色?,colors,inversion,colormatrix,Colors,Inversion,Colormatrix,我必须在矩阵中输入哪些值 Dim clMatriz As Imaging.ColorMatrix = New Imaging.ColorMatrix(New Single()() _ {New Single() {¿?, 0, 0, 0, 0}, _ New Single() {0, ¿?, 0, 0, 0}, _ New Single() {0, 0, ¿?, 0, 0}, _ New Single() {0, 0, 0, ¿?, 0}, _ New Single() {0, 0, 0

我必须在矩阵中输入哪些值

Dim clMatriz As Imaging.ColorMatrix = New Imaging.ColorMatrix(New Single()() _
{New Single() {¿?, 0, 0, 0, 0}, _
 New Single() {0, ¿?, 0, 0, 0}, _
 New Single() {0, 0, ¿?, 0, 0}, _
 New Single() {0, 0, 0, ¿?, 0}, _
 New Single() {0, 0, 0, 0, ¿?})

虽然我不确定颜色矩阵的特定版本是如何工作的,以及像素值是否在0-255或0-1范围内,但以下是它的工作原理:

如果像素范围为0-255:

Dim clMatriz As Imaging.ColorMatrix = New Imaging.ColorMatrix(New Single()() _ {New Single() {-1, 0, 0, 0, 255}, _ New Single() {0, -1, 0, 0, 255}, _ New Single() {0, 0, -1, 0, 255}, _ New Single() {0, 0, 0, 1, 0}, _ New Single() {0, 0, 0, 0, 1})
如果为0-1:

Dim clMatriz As Imaging.ColorMatrix = New Imaging.ColorMatrix(New Single()() _ {New Single() {-1, 0, 0, 0, 1}, _ New Single() {0, -1, 0, 0, 1}, _ New Single() {0, 0, -1, 0, 1}, _ New Single() {0, 0, 0, 1, 0}, _ New Single() {0, 0, 0, 0, 1})