Enhancement: subpixel processing
See original GitHub issueHi David,
Many thanks for your great image morphing application!
I created this Python command line program based on your work:
https://github.com/jankovicsandras/autoimagemorph
The main difference (beside no GUI) is that autoimagemorph
selects the points automatically, using cv2.goodFeaturesToTrack()
.
I noticed some image artifacts (bright pixels probably at Delaunay triangle edges) and found a simple method to remove them: upscale the image (for example 4x width and height), do the processing, downscale it to original size again. I call this subpixel processing in autoimagemorph
, and the obvious downside is much more time and memory required (approx. 16x slower using -subpixel 4
) . Still, it might be a good idea to provide this function optionally for better quality, as it’s very easy to implement.
Keep up the good work! 😃
Issue Analytics
- State:
- Created 3 years ago
- Reactions:1
- Comments:5 (3 by maintainers)
Top GitHub Comments
Great work! Thank you. 😃 👍
Apologies for the long delay (I was working under an intensive .NET training program), but I’ve finally resolved this issue with my latest release to this repository. In short, my algorithm for interpolating images was completely correct but the lack of documentation for RectBivariateSpline()'s kx and ky parameters was causing unnecessary artifacts to appear in the blends.
Before After
Since this has now been fixed and hot pixels no longer appear (from what I can tell), I’m finally closing this issue. Thanks!
(I should also note that I’ve added your
goodFeaturesToTrack()
suggestion to my To Do list.)