Trilineaarinen interpolaatio on matematiikassa approksimaatiomenetelmä, joka on lineaarisen- ja bilineaarisen interpolaatiomenetelmien kolmiulotteinen laajennus. Siinä rajatussa tilavuuden sisällä olevia pisteiden arvoja lasketaan lähimpien pisteiden arvojen avulla sovittamalla kolmessa suunnassa lineaarisia polynomeja eli interpolaatiosuoria. Koska lineaarisia sovituksia on kolme, kutsutaan menetelmää trilineaariseksi.[1][2]
Tilavuuden sisällä satunnaisesti sijaitsevat pisteet voidaan aina yhdistää toisiinsa tetraedreiksi, jotka sivuavat toisensa tiiviisti. Tetraedrin sisällä tapahtuva trilineaarinen interpolaatio on siksi aina mahdollista toteuttaa yksinkertaisella tavalla. Satunnaisia tilavuudessa olevia pisteitä ei aina ole helppo yhdistää särmiöiksi, jotka olisivat aina konvekseja. Trilineaarisessä interpolaatiomenetelmässä särmiön vastakkaisten tahkojen väliset suorat tulisi leikata toisensa särmiön sisällä, mikä ei aina onnistu ei-konveksissa särmiössä. Särmiöiden trilineaarinen interpolaatio totetutetaankin yleensä pisteille, jotka sijaitsevat suorakulmaisen särmiön kärjissä. Silloin näytepisteet on otettu hilamaisen verkon solmukohdissa.[2]
Trilineaarinen interpolaatio: yksikkökuutio
Helppo tapa esitellä nopea laskualgoritmi trilineaariseta interpolaatiosta on käyttää origoon sijoitettua 1-särmäistä kuutiota. Kuution kärkien koordinaatit ovat silloin (0,0,0), (0,0,1), (0,1,0), (0,1,1), (1,0,0), (1,0,1), (1,1,0) ja (1,1,1). Kärjissä sijaitsevat funktion arvot f(x,y,z) = fxyz edellä mainituilla koordinaateilla. Kuution sisäpisteen interpoloitu arvo on tällöin [3]
![{\displaystyle {\begin{aligned}f(x,y,z)=&f_{000}(1-x)(1-y)(1-z)+f_{100}x(1-y)(1-z)\\&+f_{010}(1-x)y(1-z)+f_{001}(1-x)(1-y)z+f_{101}x(1-y)z\\&+f_{011}(1-x)yz+f_{110}xy(1-z)+f_{111}xyz.\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b65c51bb8ac815620a2a4bad3860c0b16ab612e3)
Trilineaarinen interpolaatio: vapaavalintaiset koordinaatit
Merkitään suorakulmaisen särmiön kärkiä koordinaateilla
ja kärjissä olevia funktion arvoja
Silloin särmiön sisäpisteen
trilineaarinen interpolaatio
on [4]
![{\displaystyle {\begin{aligned}f(x,y,z)&\approx {\frac {(x_{2}-x)(y_{2}-y)(z_{2}-z)}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{1},y_{1},z_{1})\\&+{\frac {(x_{2}-x)(y_{2}-y)(z-z_{1})}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{1},y_{1},z_{2})\\&+{\frac {(x_{2}-x)(y-y_{1})(z_{2}-z)}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{1},y_{2},z_{1})\\&+{\frac {(x_{2}-x)(y-y_{1})(z-z_{1})}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{1},y_{2},z_{2})\\&+{\frac {(x-x_{1})(y_{2}-y)(z_{2}-z)}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{2},y_{1},z_{1})\\&+{\frac {(x-x_{1})(y_{2}-y)(z-z_{1})}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{2},y_{1},z_{2})\\&+{\frac {(x-x_{1})(y-y_{1})(z_{2}-z)}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{2},y_{2},z_{1})\\&+{\frac {(x-x_{1})(y-y_{1})(z-z_{1})}{(x_{2}-x_{1})(y_{2}-y_{1})(z_{2}-z_{1})}}f(x_{2},y_{2},z_{2}).\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a7c065e7960c716b01342f336b80f035a16968b4)
Katso myös
- Bilineaarinen interpolaatio
Lähteet
Viitteet
- ↑ Jacobs, David W.: Interpolation, Marylandin yliopisto, USA
- ↑ a b Scratchapixel: Trilinear Interpolation
- ↑ Bourke, Paul: Interpolation methods, 1999
- ↑ Wagner, Rick: Multi-Linear Interpolation, Beach Cities Robotics
Tämä matematiikkaan liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.