async function getPoints(mt_image) {
const [x0, y0, x1, y1] = mt_image.getBoundingBox();
const { 0: values, width, height } = await mt_image.readRasters({ pool });
const X = d3.scaleLinear().domain([x0, x1]).range([0, width]);
const Y = d3.scaleLinear().domain([y0, y1]).range([height, 0]);
return (x, y) => values[Math.floor(X(x)) + width * Math.floor(Y(y))];
}