Your SlideShare is downloading. ×
2012 kanemotolablecture4
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

2012 kanemotolablecture4

377
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
377
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 2012年兼本研究室講義 4回目 丹野嘉信 http://ytanno.herokuapp.com/ 画像処理の応用例http://www.youtube.com/watch?v=mT CUY4CUHFU&feature=youtu.be
  • 2. 今回はグループ課題• http://youtu.be/lNf798BKT2g 動画指定した領域を切り取って別のPictureBoxに描画作成時間 1時間4人で協力すれば60 / 4 = 15分で終わります。簡単ですね!
  • 3. 講義の目標の再確認• 兼本先生が言った内容を実装できるようになる。 (論文読みとかアルゴリズム理解はおいおいやる)プログラムの知識UPが目的できれば三次元復元まで
  • 4. ゲームに例えると• 目標 倒すくらいのレベルまで上 げる• 講義は レベルの底 上げ• 課題は実戦「訓練」 前週の課題難易度 今週の課題難易度
  • 5. 目次• イベントの追加方法• マウスの座標取得ここまでで聞ければ今週の課題はできます。OpenCVSharp本編• GrayScale• BitmapConverter
  • 6. イベントって何?• ボタンが「右クリックされたら」• ボタンが「左クリックされたら」• PicuterBox上に「カーソルが乗ったら」「 」 の部分がイベント
  • 7. ボタンのイベント追加• GUI上のボタンを選 択プロパティ → イナズママーク追加したいイベントに名前を入力エンターキーで決定
  • 8. プログラムのFormに移動• 何かプログラムを書くMessageBox.show(“ボタンが押されました”);これでボタンが押されたら、メッセージボックスが表示される
  • 9. マウス座標取得• イベント MouseDown 等 を選択名前は付けなくても自動でやってくれます• Point clickPoint = e.Location;• 課題攻略のヒントです。
  • 10. OpenCVSharp本編• GrayScale 白-黒だけの画像値がRGB = 256 * 256 * 256 通り GrayScale = 256 通り 画像処理しやすい
  • 11. プログラム• static void Main(string[] args)• {• string filePath = @"C:UserstannoDesktop15620931.jpg";• using (IplImage src = Cv.LoadImage(filePath, LoadMode.Color))• using (IplImage dst = Cv.CreateImage(new CvSize(src.Width, src.Height), BitDepth.U8, 1))• {• Cv.CvtColor(src, dst, ColorConversion.BgrToGray);• using (new CvWindow("src", src))• using (new CvWindow("dst", dst))• {• Cv.WaitKey();• }• }• }
  • 12. BitmapConverter• IplImage OpenCVSharpで画像データを扱う 型• Bitmap WindowsFormで画像データを扱う 型BitmapConverterの役割IplImage ⇔ Bitmap
  • 13. IplimageをPictureBoxに表示
  • 14. プログラムprivate void InitGrayScale(){string filePath = @"C:UserstannoDesktop15620931.jpg";using (IplImage src = Cv.LoadImage(filePath, LoadMode.Color))using (IplImage dst = Cv.CreateImage(new CvSize(src.Width, src.Height), BitDepth.U8,1)){Cv.CvtColor(src, dst, ColorConversion.BgrToGray); pictureBox1.Image =BitmapConverter.ToBitmap(src); pictureBox2.Image = BitmapConverter.ToBitmap(dst);}}
  • 15. まとめ• 今週の課題は4人で協力 一人当たり15分で終わる大変ぬるい内容• 画像処理する時は大体GrayScaleを使う• BitmapConverterはPictureBoxとOpenCVSharp の架け橋• イベントは自分で作らないと発生しない• ソロはリアルでは難しい
  • 16. 予告(次の週の予定)• Webカメラからリアルタイム(fps単位) で画像データを取得リアルタイムで人間検知とか顔検知とかできるとできることが増えます
  • 17. ご清聴ありがとうございまし た分からないことがあればメールくださ い

×