Merge branch 'disintegration-pixel_coordinate'
This commit is contained in:
commit
ce86eacf20
|
@ -87,7 +87,7 @@ func createWeights8(dy, filterLength int, blur, scale float64, kernel func(float
|
||||||
coeffs := make([]int16, dy*filterLength)
|
coeffs := make([]int16, dy*filterLength)
|
||||||
start := make([]int, dy)
|
start := make([]int, dy)
|
||||||
for y := 0; y < dy; y++ {
|
for y := 0; y < dy; y++ {
|
||||||
interpX := scale * (float64(y) + 0.5)
|
interpX := scale*(float64(y)+0.5) - 0.5
|
||||||
start[y] = int(interpX) - filterLength/2 + 1
|
start[y] = int(interpX) - filterLength/2 + 1
|
||||||
interpX -= float64(start[y])
|
interpX -= float64(start[y])
|
||||||
for i := 0; i < filterLength; i++ {
|
for i := 0; i < filterLength; i++ {
|
||||||
|
@ -107,7 +107,7 @@ func createWeights16(dy, filterLength int, blur, scale float64, kernel func(floa
|
||||||
coeffs := make([]int32, dy*filterLength)
|
coeffs := make([]int32, dy*filterLength)
|
||||||
start := make([]int, dy)
|
start := make([]int, dy)
|
||||||
for y := 0; y < dy; y++ {
|
for y := 0; y < dy; y++ {
|
||||||
interpX := scale * (float64(y) + 0.5)
|
interpX := scale*(float64(y)+0.5) - 0.5
|
||||||
start[y] = int(interpX) - filterLength/2 + 1
|
start[y] = int(interpX) - filterLength/2 + 1
|
||||||
interpX -= float64(start[y])
|
interpX -= float64(start[y])
|
||||||
for i := 0; i < filterLength; i++ {
|
for i := 0; i < filterLength; i++ {
|
||||||
|
@ -126,7 +126,7 @@ func createWeightsNearest(dy, filterLength int, blur, scale float64) ([]bool, []
|
||||||
coeffs := make([]bool, dy*filterLength)
|
coeffs := make([]bool, dy*filterLength)
|
||||||
start := make([]int, dy)
|
start := make([]int, dy)
|
||||||
for y := 0; y < dy; y++ {
|
for y := 0; y < dy; y++ {
|
||||||
interpX := scale * (float64(y) + 0.5)
|
interpX := scale*(float64(y)+0.5) - 0.5
|
||||||
start[y] = int(interpX) - filterLength/2 + 1
|
start[y] = int(interpX) - filterLength/2 + 1
|
||||||
interpX -= float64(start[y])
|
interpX -= float64(start[y])
|
||||||
for i := 0; i < filterLength; i++ {
|
for i := 0; i < filterLength; i++ {
|
||||||
|
|
|
@ -85,6 +85,26 @@ func Test_SameSizeReturnsOriginal(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Test_PixelCoordinates(t *testing.T) {
|
||||||
|
checkers := image.NewGray(image.Rect(0, 0, 4, 4))
|
||||||
|
checkers.Pix = []uint8{
|
||||||
|
255, 0, 255, 0,
|
||||||
|
0, 255, 0, 255,
|
||||||
|
255, 0, 255, 0,
|
||||||
|
0, 255, 0, 255,
|
||||||
|
}
|
||||||
|
|
||||||
|
resized := Resize(12, 12, checkers, NearestNeighbor).(*image.Gray)
|
||||||
|
|
||||||
|
if resized.Pix[0] != 255 || resized.Pix[1] != 255 || resized.Pix[2] != 255 {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
|
||||||
|
if resized.Pix[3] != 0 || resized.Pix[4] != 0 || resized.Pix[5] != 0 {
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
// Use a small image size for benchmarks. We don't want memory performance
|
// Use a small image size for benchmarks. We don't want memory performance
|
||||||
// to affect the benchmark results.
|
// to affect the benchmark results.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user