Pleasure hope I could help in some way. So based on what you say I am guessing your application has the sensors widely spaced (you say only one illuminated pixel per frame).
You also mentioned they are reflective IR sensors, do you actually mean diffuse sensors where you have the target reflect light back to the sensor as opposed to one that has a reflective mirror on the other side? I am being pendantic here about the terminology but I am guessing you are going for a diffuse sensing mode as thats the only way you can obtain an analog signal back because a reflective mirror sensor will only give you presence or no presence. Again I am assuming you are building something custom here and probably using IR sensor devkits but the principle of diffuse sensing still applies and one thing you need to keep in mind is background suppression.
By background suppression I mean movement behind the hand or whatever you are detecting or if you move the jig around to point at different colour surfaces it will throw off your readings due to background variation. Remember the sensor picks up whatever is in front of it even when your hand isnt there depending on its working distance of course Just think about that and try to visualize it.
As with all things analog that introduces a “noise” into the equation. Unless you have taken that into account already and the array is always facing a controlled environment if you get what I mean. Also besides this interference you will also have to deal with good old fashioned noise sources inherent the electronics and depending on the resolution you want to achieve this may may or may not be an issue.
Coming back to your setup, using the array as the frame of reference looking along the axis that the sensor array sees as the Z axis will your coordinate system entail x/y being the up down movement across the array and the Z axis being the analog sensor reading?
You could get away with the x/y system to give 2D movement without using ML. Off the top of my head I would approach this by creating a datatype that is based on multiples of the a type size say 8bits or 32 bits depending on the MCU you are using (so that you can expand your array and that its portable). Then create functions to deal with whatever size array you created and treat it as one long continuous buffer so in your case 64 bits would be needed so this could be 2 x 32bit words or 8 x 8bit words which you can then “stitch together” to one one 64bit word in your functions for this specific case.
If you are only going to have one bit active at a time you could detect movement in the x direction using the fact that a single bit shift is either multiply by 2 or divide by 2 and for y movement you could detecting whether or not the number changes by a rows worth of pixels. For speed you could do what essentially basic differentiation (delta x/delta t) etc but you need to make sure these calculations are are blocking and cannot be preempted otherwise it will throw your timing off and mess up your velocity calculations.
The above approach will have problems when more than one pixel is active so this could therefore be better solved perhaps with ML using a regression approach to output the metrics rather than the basic approach above as ML will assist with the non consistencies in the environment (here the ML gods need to advise).
Finally the Z axis being analog in nature means you need to take some measurement of noise background etc either and do filtering etc etc or even better I would recommend a Time of Flight Sensor that does accurate measurement (way better than you can do with IR sensors) and with a digital output all the analog front end and DSP stuff is baked into the chip and the vendor has spent the time perfecting this. I have personally played with (not yet used in a project) the ones from ST and they are quite good and cheap and all usual sources have ready made boards with them mounted. There are others though too.
I hope that can help in some way the ML experts will be better placed to advise on what way to tackle this using ML. Sounds like an interesting project.