manuelruder / artistic-videos

Torch implementation for the paper "Artistic style transfer for videos"
Other
1.75k stars 252 forks source link

why are calculating the optical flow on cpu? #29

Open rayset opened 8 years ago

rayset commented 8 years ago

I'm trying to use this program for the first time. I have a 3 minute long video, it has something like 5000 frames. I see optical flow working in my folder,but it's quite slow. atm it's doing files named like 60_61, and takes a non negligible time to advance of 1 unit.

getting to 4999_5000 it will take ages. I have a gtx 1070, is there a way to use it?

does it really have to compute flows up to 4999_5000 or is the naming different?

svdka commented 8 years ago

Indeed, there are optical flow calculation implementation done in GPU. - with openCV https://github.com/qassemoquab/gpuoptflow but not sure how to implement that. I'm looking into it but if someone has a better answer go for it.

manuelruder commented 7 years ago

The reason why I have chosen the CPU version is because you can parallelize optical flow calculation and video stylization. When the stylizing script works on frame 2, you can compute 0002_0003 in advance, and so on. Optical flow should be faster than the video stylization, therefore you should never have to wait for the optical flow.

Also it must be mentioned that it's crucial to have a high quality optical flow estimation. Therefore, we recommend state of the art optical flow algorithms like DeepFlow or EpicFlow.

svdka commented 7 years ago

Ok, thanks, that makes a lot of sense !

NameRX commented 7 years ago

Here is my pull request #37 , where i changed code to process both optical flow and style transfer simultaneously, making work both CPU and GPU, to speed up a process.