mirror of
https://github.com/python-pillow/Pillow.git
synced 2025-01-24 00:04:09 +03:00
Merge pull request #6256 from radarhere/furthestV
Ensure that furthest v is set in quantize2
This commit is contained in:
commit
ef8cec6185
|
@ -1519,7 +1519,7 @@ error_0:
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
Pixel new;
|
Pixel new;
|
||||||
Pixel furthest;
|
uint32_t furthestV;
|
||||||
uint32_t furthestDistance;
|
uint32_t furthestDistance;
|
||||||
int secondPixel;
|
int secondPixel;
|
||||||
} DistanceData;
|
} DistanceData;
|
||||||
|
@ -1536,7 +1536,7 @@ compute_distances(const HashTable *h, const Pixel pixel, uint32_t *dist, void *u
|
||||||
}
|
}
|
||||||
if (oldDist > data->furthestDistance) {
|
if (oldDist > data->furthestDistance) {
|
||||||
data->furthestDistance = oldDist;
|
data->furthestDistance = oldDist;
|
||||||
data->furthest.v = pixel.v;
|
data->furthestV = pixel.v;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1577,10 +1577,11 @@ quantize2(
|
||||||
data.new.c.b = (int)(.5 + (double)mean[2] / (double)nPixels);
|
data.new.c.b = (int)(.5 + (double)mean[2] / (double)nPixels);
|
||||||
for (i = 0; i < nQuantPixels; i++) {
|
for (i = 0; i < nQuantPixels; i++) {
|
||||||
data.furthestDistance = 0;
|
data.furthestDistance = 0;
|
||||||
|
data.furthestV = pixelData[0].v;
|
||||||
data.secondPixel = (i == 1) ? 1 : 0;
|
data.secondPixel = (i == 1) ? 1 : 0;
|
||||||
hashtable_foreach_update(h, compute_distances, &data);
|
hashtable_foreach_update(h, compute_distances, &data);
|
||||||
p[i].v = data.furthest.v;
|
p[i].v = data.furthestV;
|
||||||
data.new.v = data.furthest.v;
|
data.new.v = data.furthestV;
|
||||||
}
|
}
|
||||||
hashtable_free(h);
|
hashtable_free(h);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user