* Revert "Merge pull request #422 from hithereai/sampler_sch_fixes"
This reverts commit 09c99d10ed, reversing
changes made to 97ab68b13b.
* more vertically compact ui
* Revert "more vertically compact ui"
This reverts commit 0826d76e2d.
* Makes optical flow cadence work with hybrid motion
this one simple change of moving the routine allows for optical flow cadence to play nicely with hybrid motion during cadence
---------
Co-authored-by: hithereai <121192995+hithereai@users.noreply.github.com>
turns out ddim_eta is a global general setting param now, not passed directly as a p.ddim_eta any more. So i made it a schedule.
Todo: only show in ui if ddim is selected.
Properly normalized the optical flow field before warping and after warping based on width and height. Now, because the range of the values are between -1 and 1 (usually much smaller), the flow doesn't get corrupted by the grid_sample for 3D or the warpPerspective for 2D anymore. So, I was able to remove all workarounds and just fix the abs to rel and rel to abs functions.
makes progress advance smoothly during cadence rather than skipping ahead suddenly after cadence completes
left line commented for state.current_image, since I'm not sure what that variable actually does. It doesn't update the preview when I try it, even when turning up the speed of preview updates in auto1111. But, if we decide to make a preview mechanism or need that state var for cadence, it can just be uncommented. It matches the format of the one in the main non-cadence loop.
added consistency flow masks
- there is now an option to use flow consistency masks and an attached option for consistency mask blur, defaulted to 2.
- if you save extra frames, it also save consistency masks now
- you can see the effect on the flow in the flow outputs as well
- it doesn't work as great with cadence because you see afterimages, but if you up the blur it can be a little better.
fixed Frames to Video
- made the ffmpeg routine that Frames to Video uses able to take image files other than png. If png, it includes the -vcodec png as normal. But, if anything else it includes vcodec libx264, which works for jpgs. (jpgs don't work if using vcodec png, so I made it switchable). I haven't tested it with other filetypes, but I bet it works with others too. The png vcodec was specific to png.
- also added two more lines of instruction for how to use the file string.
- I also changed a few ransac functions for future use. They work as normal, but now have a switching behavior if passed depth. But, I'm not passing depth to them for now.
- a few minor code var name edits in hybrid video to align code better (mostly changed matrices to M, as is often convention
- commented a bunch of unused imports in render.py
- I'll leave it up to someone else to delete them after it's verified that everything works fine with them commented. I searched and didn't find them in that file. VSCode showed them as gray automatically, but I also verified.