ruby-opencvでtrackbarを使って色々なパラメータを試す
Cで書くよりrubyで書いた方が、トラックバーも簡単に使える。
require 'opencv' include OpenCV inp_win = GUI::Window.new('Input') out_win = GUI::Window.new('Output') filename = ARGV.shift inp_img = CvMat.load(filename) inp_win.show inp_img out_win.set_trackbar("TraBar",1000,150) do |v| out_win.show inp_img.BGR2GRAY.canny(120,v) end out_win.show inp_img.BGR2GRAY.canny(120,150) GUI::wait_key
Cで上記コードを書こうとしたら、わざわざコールバック用の関数を定義して、それをトラックバーにバインドして、トラックバー自体をウィンドウにバインドして…
とかしなければいけないんだけど、ruby-opencvなら、win.set_trackbar(){block;}だけでOK。