複数の関数を組み合わせて,より複雑な処理ができるようになろう。操作できるようにしよう。†ここからダウンロード。ダウンロードしたら適当な場所で解凍しましょう。第1回と同様に、3つのサンプルプログラム(trackbar、mouse、change_pix)を動かしてみよう。change_pixでは、コマンドライン引数で画像を読み込みます。../images/00.bmpchange_pixでは、imagesフォルダ内の別の画像も読み込んでみましょう。†トラックバーを作成して、指定されたウィンドウに追加する関数です。on_trackbar);では、ウィンドウ"Window"にトラックバー"Trackbar"(最大値100)を生成し、トラックバーに変化があるたびに、on_trackbar関数が呼び出されます。val)は、トラックバーの値を引数にしています。†マウスイベントに対するコールバックを指定する関数です。on_mouse);では、ウィンドウ"Window"内でマウスイベント(クリックなど)が発生するたびに、on_mouse関数が呼び出されます。NULL)は、マウスがどのような状態なのかを引数にしており、この値はcvSetMouseCallback?が設定します。yは画像座標系におけるマウスポインタの座標。eventはイベントの内容。マウスが移動しただと、eventの値がCV_EVENT_MOUSEMOVEになります。他にどのようなイベントがあるか、調べてみてください。トラックバーでR(赤)チャンネルの値の倍率を指定する。加工した画像を表示する。自由な発想で料理写真を美味しく見せる画像処理を施し、保存してください。GUIを使って、プログラム実行中にパラメータを変更できるなどの工夫があると大幅に加点します。処理が実行できない場合には、適切なエラーメッセージを表示してください。適宜コメントを入れたり、関数化したりして、他人にもわかりやすいプログラムになるように心がけてください。コメントのないものは減点します。他人のプログラムを写したことが判明した場合は、両者とも0点になります。課題内容に対応していないプログラムには点をつけられません。第5回(5/17)の講義中に課題プログラムのコンパイルと実行が正しくできるかを確認します。その場で,新しい料理画像の加工画像を作ってもらいます。下記の提出物を第5回の講義日(5/17)24:00までにCLEで提出してください。提出物一式を入れるフォルダの名前は学生番号(ログインIDではない!)にして,zipファイルに圧縮してください。仕様を満たしているか。ソースコードの可読性の高さ。機能ごとに関数を分け、わかりやすい関数名をつけているか(機能ごとにソースを分けて分割コンパイルをしてもよいです)。わかりやすい変数名をつけているか。わかりやすいコメントを記述しているか。機能に対応した分かりやすいコマンドであるか。無駄な処理を行っていないか。工夫に応じて加点します。大西までメールをください。件名は「AP2017:課題2」としてください。