Open beyondmetis opened 9 years ago
Hello beyondmetis,
All this sounds good! I'll be happy to merge any code you want to add.
When you say temporal filters, do you mean purely temporal or spatiotemporal? And are they motion compensated? Doing accurate motion estimation and compensation may be prerequisite for the more interesting kinds of temporal filtering :) This is definitely somewhere on the roadmap.
Best, Alex
Hi Alex,
I'm finishing up my PhD coursework by the end of this year, so I'll be more able to contribute soon while using this library for research.
Can we have a 'motion estimation' module and a 'filter windows' module? We shouldn't have to write convolutions ourselves, but we can wrap them (thinking scipy.ndimage functions). I'm thinking something like:
import skvideo.io
import skvideo.signal
import skvideo.motion
video = VideoCapture(sys.argv[1])
# example window. Gabors take several parameters, but we should have sane defaults
window = skvideo.signal.gabor()
# simple convolutions using skvideo filter window function library
video_sp = skvideo.signal.spatialconvolve1d(video, window, axis=0)
video_sp = skvideo.signal.spatialconvolve1d(video_sp, window, axis=1)
video_temporal = skvideo.signal.temporalconvolve1d(video, window)
# motion estimation using estimation tools (both optical flow and block-based methods here)
opticalflow = skvideo.motion.hornschunck(video, hsparam1, hsparam2)
blockmotion = skvideo.motion.diamondsearch(video, dsparam1, dsparam2)
# further processing ...
Todd
Hello How can we call this class videocapture for capturing videos in python code.
As a video quality engineer, I'd like to see (and I have code for) temporal filters like gabor, 1st and 2nd derivatives of gaussian, and gamma. Is there a list of temporal filters that you are interested in producing?
I also have a ton of other video code that I could contribute. Very cool project!