Edge detection
- Juno and rust versions and a harness including verification and the ability to display frames or output the entire videos; we'll probably need to tweak the verification for GPU like with Cava.
- Uses opencv for reading/writing videos and displaying frames. TBH the opencv bindings for Rust are pretty bad, they're pretty close to the C++ ones. I use unsafe in one place to get the frame as a slice.
- Adds an
opencv
feature, without it edge detection is disabled but it means that we don't have a dependence on having the opencv system package installed (libopencv-dev
on Debian/Ubuntu). The feature is enabled for CI, where we run just 2 frames of a video to avoid increasing CI time too much.
Merge request reports
Activity
requested review from @rarbore2
assigned to @aaronjc4
- juno_samples/edge_detection/src/main.rs 0 → 100644
182 let input = unsafe { from_raw_parts(ptr, height * width) }; 183 184 let input_h = HerculesCPURef::from_slice(input); 185 186 let result = async_std::task::block_on(async { 187 r.run( 188 height as u64, 189 width as u64, 190 gs as u64, 191 sz as u64, 192 sb as u64, 193 input_h, 194 gaussian_filter_h.clone(), 195 structure_h.clone(), 196 sx_h.clone(), 197 sy_h.clone(), added 3 commits
-
2520366c...1c25c5c8 - 2 commits from branch
main
- 9fa243be - Merge branch 'main' into juno-edge-detection
-
2520366c...1c25c5c8 - 2 commits from branch
Please register or sign in to reply