|
@@ -255,7 +255,7 @@ func TestAdjustHue(t *testing.T) {
|
|
|
want *image.NRGBA
|
|
|
}{
|
|
|
{
|
|
|
- "AdjustHue 3x3 -10",
|
|
|
+ "AdjustHue 3x3 -540",
|
|
|
&image.NRGBA{
|
|
|
Rect: image.Rect(-1, -1, 2, 2),
|
|
|
Stride: 3 * 4,
|
|
@@ -265,13 +265,57 @@ func TestAdjustHue(t *testing.T) {
|
|
|
0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
},
|
|
|
},
|
|
|
- -10,
|
|
|
+ -540,
|
|
|
&image.NRGBA{
|
|
|
Rect: image.Rect(0, 0, 3, 3),
|
|
|
Stride: 3 * 4,
|
|
|
Pix: []uint8{
|
|
|
- 0xcc, 0x00, 0x22, 0x01, 0x22, 0xcc, 0x00, 0x02, 0x00, 0x22, 0xcc, 0x03,
|
|
|
- 0x11, 0x28, 0x33, 0xff, 0x33, 0x1c, 0x11, 0xff, 0x93, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0xcc, 0xcc, 0x01, 0xcc, 0x00, 0xcc, 0x02, 0xcc, 0xcc, 0x00, 0x03,
|
|
|
+ 0x33, 0x22, 0x11, 0xff, 0x11, 0x22, 0x33, 0xff, 0x44, 0xbb, 0x33, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "AdjustHue 3x3 -360",
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(-1, -1, 2, 2),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ -360,
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(0, 0, 3, 3),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "AdjustHue 3x3 -350",
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(-1, -1, 2, 2),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ -350,
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(0, 0, 3, 3),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x22, 0x00, 0x01, 0x00, 0xcc, 0x22, 0x02, 0x22, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x1c, 0x33, 0xff, 0x33, 0x28, 0x11, 0xff, 0xbb, 0x33, 0xb5, 0xff,
|
|
|
0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
},
|
|
|
},
|
|
@@ -298,6 +342,50 @@ func TestAdjustHue(t *testing.T) {
|
|
|
},
|
|
|
},
|
|
|
},
|
|
|
+ {
|
|
|
+ "AdjustHue 3x3 -10",
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(-1, -1, 2, 2),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ -10,
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(0, 0, 3, 3),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x22, 0x01, 0x22, 0xcc, 0x00, 0x02, 0x00, 0x22, 0xcc, 0x03,
|
|
|
+ 0x11, 0x28, 0x33, 0xff, 0x33, 0x1c, 0x11, 0xff, 0x93, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "AdjustHue 3x3 0",
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(-1, -1, 2, 2),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ 0,
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(0, 0, 3, 3),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
{
|
|
|
"AdjustHue 3x3 10",
|
|
|
&image.NRGBA{
|
|
@@ -343,7 +431,7 @@ func TestAdjustHue(t *testing.T) {
|
|
|
},
|
|
|
},
|
|
|
{
|
|
|
- "AdjustHue 3x3 0",
|
|
|
+ "AdjustHue 3x3 350",
|
|
|
&image.NRGBA{
|
|
|
Rect: image.Rect(-1, -1, 2, 2),
|
|
|
Stride: 3 * 4,
|
|
@@ -353,7 +441,29 @@ func TestAdjustHue(t *testing.T) {
|
|
|
0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
},
|
|
|
},
|
|
|
- 0,
|
|
|
+ 350,
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(0, 0, 3, 3),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x22, 0x01, 0x22, 0xcc, 0x00, 0x02, 0x00, 0x22, 0xcc, 0x03,
|
|
|
+ 0x11, 0x28, 0x33, 0xff, 0x33, 0x1c, 0x11, 0xff, 0x93, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "AdjustHue 3x3 360",
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(-1, -1, 2, 2),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ 360,
|
|
|
&image.NRGBA{
|
|
|
Rect: image.Rect(0, 0, 3, 3),
|
|
|
Stride: 3 * 4,
|
|
@@ -364,6 +474,28 @@ func TestAdjustHue(t *testing.T) {
|
|
|
},
|
|
|
},
|
|
|
},
|
|
|
+ {
|
|
|
+ "AdjustHue 3x3 540",
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(-1, -1, 2, 2),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
|
|
|
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ 540,
|
|
|
+ &image.NRGBA{
|
|
|
+ Rect: image.Rect(0, 0, 3, 3),
|
|
|
+ Stride: 3 * 4,
|
|
|
+ Pix: []uint8{
|
|
|
+ 0x00, 0xcc, 0xcc, 0x01, 0xcc, 0x00, 0xcc, 0x02, 0xcc, 0xcc, 0x00, 0x03,
|
|
|
+ 0x33, 0x22, 0x11, 0xff, 0x11, 0x22, 0x33, 0xff, 0x44, 0xbb, 0x33, 0xff,
|
|
|
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
}
|
|
|
for _, tc := range testCases {
|
|
|
t.Run(tc.name, func(t *testing.T) {
|
|
@@ -377,10 +509,12 @@ func TestAdjustHue(t *testing.T) {
|
|
|
|
|
|
func TestAdjustHueGolden(t *testing.T) {
|
|
|
for name, p := range map[string]float64{
|
|
|
+ "out_hue_m480.png": -480,
|
|
|
"out_hue_m120.png": -120,
|
|
|
"out_hue_m60.png": -60,
|
|
|
"out_hue_p60.png": 60,
|
|
|
"out_hue_p120.png": 120,
|
|
|
+ "out_hue_p480.png": 480,
|
|
|
} {
|
|
|
got := AdjustHue(testdataFlowersSmallPNG, p)
|
|
|
want, err := Open("testdata/" + name)
|