Add raft-stereo model to prototype/models (#6107)
* Add rough raft-stereo implementation on prototype/models * Add standard raft_stereo builder, and modify context_encoder to be more similar with original implementation * Follow original implementation on pre-convolve context * Fix to make sure we can load original implementation weight and got same output * reusing component from raft * Make the raft_stereo_fast able to load original weight implementation * Format with ufmt and update some comment * Use raft FlowHead * clean up comments * Remove unnecessary import and use ufmt format * Add __all__ and more docs for RaftStereo class * Only accept param and not module for raft stereo builder * Cleanup comment * Adding typing to raft_stereo * Update some of raft code and reuse on raft stereo * Use bool instead of int * Make standard raft_stereo model jit scriptable * Make the function _make_out_layer using boolean with_block and init the block_layer with identity * Separate corr_block into two modules for pyramid and building corr features * Use tuple if input is not variable size, also remove default value if using List * Format using ufmt and update ConvGRU to not inherit from raft in order to satisfy both jit script and mypy * Change RaftStereo docs input type * Ufmt format raft * revert back convgru to see mypy errors, add test for jit and fx, make the model fx compatible * ufmt format * Specify device for new tensor, dont init module then overwrite and put if-else instead * Ignore mypy problem on override, put back num_iters on forward * Revert some effort to make it fx compatible but unnecessary now * refactor code and remove num_iters from RaftStereo constructor * Change to raft_stereo_realtime, and specify device directly for tensor creation * Add description for raft_stereo_realtime * Update the test for raft_stereo * Fix raft stereo prototype test to properly test jit script * Ufmt format * Test against expected file, change name from raft_stereo to raft_stereo_builder to prevent import error * Revert __init__.py changes * Add default value for non-list param on model builder * Add checking on out_with_block length, add more docs on the encoder * Use base instead of basic since it is more commonly used * rename expect file to base as well * rename on test * Revert the revert of __init__.py, also revert the adding default value to _raft_stereo to follow the standard pattern * ufmt format __init__.py
Showing
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
This diff is collapsed.
Please register or sign in to comment