2

When one does an operation Wrong / Right aren't strictly defined. In most cases the questions are: What's the model? Is the model reasonable? When you do sub pixel motion estimation on frames which are highly correlated you can assumes the change in values, even after non linear operation like Gamma Function, is small. So basically the model assumes ...


2

As a complement to the comments above, I am adding the slides for Image Registration by Leow Wee Kheng, where one can find: Given two images, how to register one with the other? Determine the corresponding points between the images. Manually mark corresponding points, or Detect and match features between views (see lecture on feature detection ...


2

Let me provide you an ideal sub-pixel shifter in 1D, which can guide you for further study in 2D and using different methods as well: Now it's simple to show an integer delay operator in discrete time as: $$ y[n] = T\{x[n]\} = x[n-d]$$ The system is LTI and the impulse response turns out to be $$h_d[n] = \delta[n-d]$$ In order to shift an input sequence $x[...


2

A simple solution would be to start out with much higher resolution images. Shift by integer pixels, then resize to the target resolution. Otherwise you might train your estimator against interpolation artifacts.


1

It is a matter of "getting away with it". The multi-tap algorithm is not doing a perfect job either because it's not a brick-wall sinc filter, giving some error even for linear color space input. Also the original data may not be perfectly sampled, which can be considered a further source of error. Small error statistics are usually approximately additive. ...


1

The science of finding values in between those points where you actually have samples is called Interpolation. It's a rich field, and every signal processing toolkit (be it Matlab or OpenCV, or …) has functions for it. Picking the right interpolator has a lot to do with the nature of your input, and the purpose of you doing the interpolation – so, no ...


1

If your images are as clear (I specify clarity here because it is easy to threshold in this case) as your examples here, one easy way of computing the direction vector of a moving object would be to calculate its center of mass across frames. For this it's as simple as thresholding first (pixels which are part of the object are equal to 1, all other pixels ...


1

It seems your question is not only about how to create images with sub-pixel shift but more about motion estimation for which you need those images to compute a likelihood. If this is the case, you may be interested in the Condensation algorithm by Isard and Blake. Motion is represented by floats and therefore allows for sub-pixel estimation. Such a method ...


Only top voted, non community-wiki answers of a minimum length are eligible