@griffinboy
I found a weird way to do this, actually we could turn the image file into a big array externally (by using a c++ or a python script or something else) and store it into an single channel audio file. And then we could simply do something vary similar to a 2d wavetable, just read the rows/columns as cycles and interpolate between the cycles next to each other. If there's more than 1 plane we could store the data of rgba planes in the same array in order like this [a r g b], and then read them separately by transpose the index. This will also give us a Z axis so we could interpolate it with both data from rows and columns to get new values.
The whole structure will be like this:

I wrote this simple demonstration patch today
HiseSnippet 5828.3oc6bsuchijdG2yvlwryrYm8jjyI+Wc58blfagkk.CHld6IsQ9FtAKY.eq6i2cDHInrERXIAFX8jLIuQ4MXdT1Gg7DrcpKRnha1z1t6LYxpdFrp6+9tTe02WURR00oogmmiarURTeXWiXq7kwqMz1usbaMncrRaiynTGsVFa45pMLVwgc077LzisxJe1d3ZrxpedLx0+8+ZQMKM6lFQYEK1INvlFkgcf9Q4p952.sr1US2nNrCSs270kZ5XK6X4zCglOKtPrtZMuBMxGpgq1yhGaeMu1wV4EwapIjyrYiBlBFoyap2HeCiMyZTP2nPNolYMkxJkIsQFobwV4WsiNz2wslulugWrU97hN5Cq014Fa5.bBzC1vx.mPLVMzHSydWGKcLIhyMlbanktZHaxKFpWTiXZeFko8ODuBTGNN+Hl2ukT.HpErLvUd1jv6yl.dhrvSfAdyARqv.o3TH80wq0zE10OpDLd90wKY6a3ZpgjSrP4vdcpYA0MbUQ7bDThuxmgDIzdH1yF8GhK6fZmsOeGsqL10EkXb+jLmfPJ.5m0dYhDI1Xi0uiqttFc0bM.djwBKe8.eCvDZYf+quFhZ8tq1i6eKGMcbKRrK5mZC87M5viyamAZc5ZYrEhj78Rh.CRaxyGzWyErUOcnCt5fWA1wtEz1fzhwY6gHFGUGGqjq8NgKXaoYcmpFZ5n1wLZltNcpZXZ3ZfT2q46BsakbbekhslQivX7znmIpknNLnqoHwabMSRYiuHw5+R4JA3C5JAa8SuMnxV0qV5LPRMfGhQijgtsZ.bbAZVcaqA5hr4X.bLAZ1.H1N0ZKpeE2FrU0pacNpmrAZX1MQwasDef36maWKF9MG1zxnrgcK+1exPiKd1hqyMdIGr129nPO451Os7x2sEnHPFrMXGvt777W.RAd2df8Ak.G.dCnLNqT.zu2O5eUz0+qqHb6RyPIZLkr0MF7sOVz76+8TcAMKKfGwxrG.ZCbPyVIixbgaRA7zWFg.J05q+c.YbKDlo5r4HxZ0f49LL2u4cBWcMeMfEc5BRpkVGzQCYbe.3FnNMqolPMWJPDSAL5LrTfXjpw28cX0sIHU1FcHnBPAnBNBTETCTGbL3Dvofy.7i+2ES1UODkijowXkcnXvZ5YUi98QW2tDpW2trJsQZc3wecPxLXbwR1L3JybUuQVbPqbubX416w5USGqdcr8RNbrAr4x71DCRdl+w.xMW54fO.PhLRsGRpUKz.UQjdSEP8wFmlGZ4C9kEs3LhLkM4rAlku+ft+CSAbdC9Xd3gKmcFpzhH7eHlmNDMUlw7jgVy1T8QukEvKw0e7wab+trO01.1psONuNZCXlMst3SnqM29wbEpG.bdp7ONjz9+JtG+o0aoeVCtORnaQAJ7fgVFTPLZCHSUS1Vqug8+hOJVEjImNnHpMzuuNt+GK2zaX3eiggMMFJujiV6a+YdnPXi0z.9P15dm.WRj0Pg0EW6EcsfOgpDA1XwAUN1JaSz5CO4WhSPAKD5NAVJbt+dzDEXL1EapHEP5909XHJROEzcS0JUiTZgC753kwAfMn4C1XYl7e6LlFeDlLtCOiyrLb8Hd9s2eOh7i2ETzEH6B11k5T0Vs.EaAjaA1tUPFM.Ea.ja.1tQPFZfhZ.YMv1ZjLVFGXlvesKRrHSYznJtcoL4d68myclwhbgbtlCQylB8xinebaPnO2hzTl4h5VFxqLjqLIgqMY3d.XjTTbpzomtBYlLYj0BFGAYbBTGZR1bOefmQSenisG1VfeaCJcLG6Ae.yP+XdIhB2FuM8fjP.G1Ll.3EnYjv0RAzr0QjlugaWGKMeiGrsRp4WhLAjD20eKvn02BzdkPJf6qDSAZ8pzo.MdUlW9XIlafHavXldSGWWCutN15P6Vj8VZifPzl6VF9f8O3iYs+YzERMswPvVVH0iOLB9WL6G8K1fbPEQGBANxJlM8O5jP1FUvVQGZPSjkBeisr0qZzB5glLMYMSJLwoNLYgEW9tQ7N5lJZP6ktiRi5HDcZ3WUytkQhonK9vBRJvmBHh9eAdA7XOEvWx5gQ1Bq5FaXAsuB36.VHuVDwfBOkoVF9xNcPS4QIR9bl577EvZRuDMN8hZblknwYd9DDrHuK9.fp6P3yyxHlnxouiJu0D0LycTyh3CFZiMHGRFCYTGmdw7NZwOmHBZzy22wl3iHxfpgO8.2R.sQxFCfYOaxhcH+GKRpnHtGccrR1Lr6RgFQqdFqk3OmXUZGyS5H7YVsZhUQcbR3qDdI7OvrQoT.WqolkwtZM8cbWW7kPNt0PcQXenoqStS0AsBERyQfn1f6ye3kIP+27or.P970vJcAPUVyxpAhekbZZfbnZ2ygSFcExJ7VVKJj9NbuQC1eaZTDafVuJ7V5pV.6dcZX35wHCY2W4WAxJl9kS0izlf8Bg5eMSaIYbXuNnFJNcyzctw1Cy4AlDVOQzOsBzzxGbGka5dJvWr.b32Vym50TWTJKGmtL8GtpH7nhrF0DE.8bfUKrpWaiYopo0DQUTMf7RZlJjRwpNIV0xAAYPWJkaxGvhCqCQez0vumqMoN3z+v8iC5N+gkYd3iXLrBABN5XLOTR2vRBJYjkyEwHsWUZHrKh7dYTkaRIuJZ9s4MQ7Y2jgMeClwYMVps4hn1wmL2Fzc4lPpfYnFbgUQ0ZqonknsUjdKZXREHpoj2Fu.+qH4JwpBjqnMVibbGzBAAkQ+yEfvJiaNZo4wDuFhxe2EXZA2MZ7nAUykg4zfkQQO9f.VUGncx4fWVNqmulqOwfCpQzV+BFxkolF15g0KpQbSWWpsunJfLBF1vWxwAIl6ZPzTQR8JZsrg98zMRBSENeACtU03g1dFt9n7aDX+KRxp8AHVSR7PmSjLim52+ZKTTW7gIpCkZAR0IE0Ax3Ij3yHpepkzbh++.YcPrOaLuiuPiJ+mqjVF2tYlVa62tFp8krIlvlu7FKTPh7wQ8HRkgQ2N8z7.YO6etXllR94oa997HDVyiyQUPX9R9PdviRVypzrtHGEuexT.V94+TshhOAZEBhiEszam1h.MyI9yEyzzOpZEg1G9EmdA1Ydhq4d3PrlJv1oE6nJeBot0clJVjhI8lLiTSltXJcRt5j6otCQWQfw2eq.ZaLaXUuYi6j..rEQRG9N3EDJepZVblZVLrlXNvOLES.SkZtL6xElXCNiis9lhyxGlh3mng2KmXxzxoHreVdRh6hmLUqYIzoFHDE+BReyMEhvEjTjecZHYgJJ3oPeTYL3GURRzZ2KGhDXwD7kTdQgYL1FBcdFpB0PSWBbimodujtQaSwMqwEwKIiClCxDDILEbCb0lkaxwz2KjyNYkh3xoD3mgQuzQUdBzqmlEbjg6xGUIt2ESKkBaz2wkIJKUTL.VnRJhXeWsvn+mnV3MAXhLv7LUMD6ppSOejFPxPMfjsHg3SFHr8W+1PObOWFKpJ5zyV2irWWzZ30sO9Vz+0h2DZYskkUxvVj74MZQejteNVEkv1.QRRDRFuY.snwwiqaR5e7HOosmXzbyjuCIBly1M0Z7zl0R8nJlSfOaJQ9KHyiVkRGUMZ5m7cvTBoBolSwOHXIWiHQDyJDXJJwODt6BDIUCKzXbZanuwhDWEGWikSvEU+YDgQE8KKg4SSMBDmarAq.UHEDK7FKT2m7zyPkpW7nD+HiF113ynn+3Y5Lp.zGVGpQfEJ2YqDVXyl9djvANOEI1B46DEx0dYXEHaZD1oJbh2gXDXRIEIg3LoFmf49M1.+6ESzgM60vPE4zkROeFZit+z37SRGelpg20ui5oo6BwmGkqlUxtuCM.ftuSj7aZxuYtXs4NNkrqtLiCpZO1wYukab16wNNEWtwo3G93Lu4h3CWqnKVw21vyKJarkD7tulcMZ6oZSDjvH6RMgfDoAGXFQjWXs6eb2B+f6ONGWC8TicW+M1NMdazjX7b30VLRPR2TSHpebHokKxenEik0E4uO3rWpIzHdbvoA1uoEilz2KZJlZB8lEglkGQCMrrbtAqdHMw3RsTlUfCCxyY.4KxvmNKxtQpLoPQ3gTIIwLROJHxw6N7JTKdZAQp.bb1L3.AgTYlCHF7zCBtoEWuHS5Thalc84kOhCEfpIw0nw3JbIlk2WS5Riz862vy+CxeyvSF8LlEuHbzEtpEtTxYLMmyRhT1cdRRPyjjDe2qDB1dQ7QVRdVVI4SnBJjHERkt3icBsb4fmmhc+2oucUXChrA5SizeC5NlPdLZw9hD9pXMSDyfs.eCnXhUuq.kSr5TYkZ5bJlBGzd3loGAL1S6IEyN6GDgA3dImnSJH0TG1xZLCYwOcC4L6oBQKdggbRYujmHE769FtRN.4Dqd2wiubL7YcIDkIgLWeV5d9HeLjnGT1pKYzvKG9nm34xhITpoOcNJLmLLN7KUINnWbYKJ5.15LgSkrEPOt0D24j74eZqryxCcGNzNx4SYG476zNB4T5muYjz2oYjEQUK7.jCFsESPoW.A81oHn2dmDTl6vvXlmdJJycQQYlfhXtXv0gN9FJ1IIHHwOj.LcQllysrfd1xvctEieWucuqFljdJrrzOthwV4ym7kjN9heIoYeGtaRYPLUDOYE5qz0vdQuY2wB3pwhsxWDfJzv6Sdcp+cAuN0QSoiA0isxWEm4YBIFA53Wd5+5JwhgWII1y9udV7rho44u7nqywq5a0WlWpfrBuZ+Cyy22wsur4tGWTg2O2d44UOUCk1WZKE91CJiRebmaj6uYtRJ7keyf77k6XLTl2cyJJ7us9v77ib2dnbeuRnzibykmucwRij6O5xiT36jaOI9hBVij2endMT4EqKwef0kBx8GXdhBe19GKwq6lEUd5AUUL42rhD+9mWAUd95nx61osDes7Bhx6eYZck8K+lcJX50XXF4h4UtRY+JkaVnu6AkxJW28DGkQmw0ofpUK6rxGWZ6qU5OpkeA9102NmrssrmhsQuzETOH+04j253S6ob4HQtB1iNbm7xx61quxgk1cGNdug54kqT6pAJW5zqLm44CykWN8IGMRw7MUpw0WVotDr7kWInzs+NmxwmMWSI3QWmUPw+f9nzMrMjjKqwInLP3fy35qZcoD7LWOQkK22PiKyUM8jf84FHpXsqrFm8MkbQk2ounh3o7nxGz9ZI4ix1UTonPi2xcVmycjjGU3RQEa2cdKm8kCsjjyT3XT6aT5bt9U7gRxUpVVTY6dcNia+NYMkfRRYDTJXk6Dt8eyguUBtSZDd4EN3DNdcySkjUt5sBJMR25Xtypz7XIXU0pH7lVrNm5YiNRB50kajxkGXTiKi8ApRxmO3PAk8qk8HtyL5kKOrlakQJcKebUt8OL+NRvcKUBkt+kJbps6HkGVw2cnxA816PNjlkPdYeQoAJ6mYzAb10zbxC0S2bfR+iKVhKS0CZmGd0gGgJ+Zt8Q0W2HuLcZ.Q2+yn59+lIz8I58+cwIV7C03i9hOD6ALwI8eahyeahyunl3r759YtCce0VBk4N6vVHrWsj4HkBuoXct9JCNVRVzQEwKNsTUNUqQ4yK6AsGpjuLuJ29WcbEjrXGT46qr8IbpCapKI2cmcP75cGVma+baVRBN7xNiPklsJ2YbNmHA8GUTTIuu0obl6cIRWoUuMQ7lA0P7V8RmJAg00ETJepPcN9aDqJA6dplfhqfzwb7s6TSR9lpEFoTV6zi4rgZmKIeVssDTpdLrFmsnklD7vS1STo74H7vqb1gRP6BuAU99pmxclq4gHcgcuFMdEPxR9NPT+co5dBJucTVT6GrYYIXO+9HYqXODdGnpHIevgXY61bpb74b7Pz+YVCTNQLWEt9cFdfD7.jbSIyoZpbmooNJOrSt7CTrNIaINd6Q8xCKj6MiTZebspb7E2UVRdaNwgJCxZWgKyw62IubsKGbihU8C1m6LKOjrezVWNPws4tGvolYzf7x417ngJlCyThyLeZMzbwhE5qT.obfveNk7vAl6dihak9xb629sGlGteFi9JGbsLp7tVUxCOogaekKMMQykqbIed4rVW2WQTsPQt96YLJmb8sy3prcgqGTfuzk54j6VSyGkVYyBpoycUNYs8x6oj47qGVP0c2cyIei1tHaEWMHSA9706kSNyg65qT1oxnBlU56lSVLikmR8ruwt.+9Vi1TtBJNAkxv7cJXltP+rx5bCcUT2YTNDMnZmSlmyAYKJidiB7cMs2T1qqoihpWgKKzuQ5cxJO7sGXqn1b3YELGl9pLyQ2+qBz8IQ7PT6+h3znelcQCpV++zyhmoPNd5EwBMe3kDeCspQoMk3UG5GktuD0B935WfubkyiRueA9F9FQoUKPsvGl9rB7CbSGk1r.u5aTEFm9xBzU.BSi3htksiR6Vf2V9znz8KPWgHL8HT+64FkFIkJdIy3ku.cEjw3miurxUQoQZM15GHNN81bzUXBSuKRKdSuzQzKmYe25YFm9.N5JPgoQqPvyUaywoQV7F0eTTZUN5JTgoQyR145iiRirJ.kLhRirxPVAaL+jS83h2Dk9sH7tW1nzM3nqvElVmi+frpQoM4LKHoGjdw9iPeDeI5VqFO3488t7H49bmI8iowYlSiQqni0risxJAQVfh1nqgqODGHyJaazG1zf90ZZ03aa3ckuSWRcCBnCMkYx4Rjf6Ii4mGuQqXCXGrgrIHewJFmwO8e9Z5qHNaNPeiNgersV8Wgx683BhxMMa1q76X.0udQf52DmMhUF388CdcD79oad8jvKFbZ3gxA+Yhx1mYTIT7rvK1jnlM2vCqDm26eOgNh4aLve1biMK0sTw6wH.JwPg+36lhB+K8llB+QsWS2Kgs53zylgx+wWGM.jmMHrmAOaFZ78APeJFRHAMetGKY9k2qq8QD2OdDCwEayW2Qigv+tokl+wYjlkdMlsi+3igOgTxCqZrkR990e8WOOI46mUlmISlYjjI9.B.YARxu2aZpSeFI4QKTR9DKx90e.NUxPO1OYzybzLW4oWyb0IMuTVqQf4kuHN49ENs6uzMPO6qiy7Ek4UuB.iceDMRK1DYgtFbzDePBe7fM8hjDiA6+3zfEvAD+3A3D2q2YKf6Fa38ZT6mZLqJer6PWfcZcvBMKg9wWsDNAr.ZP3+Hfo+kwIu2RTpeJd84ygWaXiqI9S4XYCMWa7WLQnWEG72uAMWT+uxyVJ6Y+0+56my5UyicLuUlRrn0c+6iOwt9yP8+kQrRv+3qa33hlAWUSG1yKJ+mOkj86+9Yjr+oWqgOwyvsS1COnaYYAhxXJZB7qd+xINWHU8OGeAmkwhnue75kj9d8LzGRn+wh99x60oyHx4mrdZVn82PWnM3AE+SwZse485c7B7FbZp7KVdp7qnTI8cG6SAQdeF62j0mo+7j1NoP92FO78yA6DzZf621ylywNexmfElxxNK5GYcO+1wrW5qR.cs9o.5gKEP+lm.flaQ.8+9GF6VYx.M80dXv7ofelmAlfaYk8+aimTF7sQANOFZ8OYHUh0fCKRe8+d.R+h3Ica0P6olax7MJ9yoQ89aiWwQumkl+jexjweXoCJ.hVZm86TL9qNrsGzeH6Gd5mruixKKD+53pP+lsmOFe1bvHJB5OFXL3qO8WEeGSSil9Q.7yiu6Yeb9TSGi9vm1pBIReTH.3ubzHalMMPitMZ8Zuv.VCRKfSi4.0Lr0IIvFbCJTLLFBbghgEFqiVSWm+TS5Vuf+9V+EjbPXxl7s.e03UvoAyY2d5f7Q6O0r4jc0LML8CsgYdnMbyGZCy9PaXtGZCy+Panz82PrKza0y2oCcZSrXUT2grGYqrxNDerIZqw9e..AlTtD

So far it works well, but currently it only does 1 plane row scanning with linear interpolation, the column scanning is implemented but I've haven't tested it yet cuz I found I need to prepare a new data array for testing this. The 3D plane scanning algorithm is there but the function itself is currently to be implemented.
I'm feeling like this might not only useful for scaling spectrum magnitude and phase but maybe also for something like partial envelopes, modulation tables and even maybe something like morphing between a sequence of presets of a synth.
I'll keep polishing this patch and would like to hear your opinions on this idea :)