Colección de citas famosas - Consulta de diccionarios - Ejemplo de interpolación bilineal

Ejemplo de interpolación bilineal

Los puntos de datos rojos conocidos y los puntos verdes a interpolar

Si queremos obtener el valor de la función desconocida f en el punto P = (x, y), suponiendo que conoce la función Los valores de f en los cuatro puntos Q11 = (x1,y1), Q12 = (x1,y2), Q21 = (x2,y1) y Q22 = (x2,y2).

Primero realice una interpolación lineal en la dirección x para obtener R1 y R2, y luego realice una interpolación lineal en la dirección y para obtener P.

De esta manera, el resultado deseado f( x,y) se obtiene.

Los puntos rojos Q11, Q12, Q21 y Q22 son los cuatro puntos de píxeles conocidos.

El primer paso: interpolación lineal en la dirección X, insertando el segundo paso azul: Después de completar la interpolación en la dirección X, realice la interpolación de los puntos R1 y R2 en la dirección Y

Inserte el punto verde P en la dirección Y.

El resultado de la interpolación lineal no tiene nada que ver con el orden de interpolación. Primero realice la interpolación en la dirección y y luego realice la interpolación en la dirección x, y los resultados obtenidos son los mismos. Sin embargo, el método de interpolación bilineal no es lineal. Primero la interpolación se realiza en la dirección y, y luego la interpolación se realiza en la dirección x. En comparación con la interpolación primero en la dirección x y luego la interpolación en la dirección y, el resultado es R1 y. R2 Es diferente.

Si se elige un sistema de coordenadas tal que las coordenadas de los cuatro puntos conocidos sean (0, 0), (0, 1), (1, 0) y (1, 1), entonces la interpolación la fórmula es Se puede simplificar a

f(x,y)=f(0,0)(1-x)(1-y)+f(0,1)(1-x)y +f( 1,1)xy+f(1,0)x(1-y) En aplicaciones donde el valor z tiene características monótonas en las direcciones x e y, este método se puede utilizar para extrapolación, es decir, Q1~ Q4 se puede resolver Valores en puntos fuera del cuadrado formado. Una extensión tridimensional obvia de la interpolación bilineal es la interpolación trilineal. Para conocer el método de interpolación trilineal, consulte interp3 en matlab