画像に対する基本的な処理を学びます.具体的には画素値の編集,幾何変換,コードの最適化(code optimization),数学関数などです.
画像処理は難しい。 Instagramのキレイなフィルタ、GoogleのPhoto Sphere、そうしたサービスを見て画像は面白そうだ!と心躍らせて開いた画像処理の本。そこに山と羅列される数式を前に石化せざるを得なかった俺たちが、耳にささやかれる「難しいことはOpenCVがやってくれるわ。そうでしょ?」という声に身をゆだねる以外に何ができただろう。 本稿は石化せざるを得なかったあの頃を克服し、OpenCVを使いながらも基礎的な理論を理解したいと願う方へ、その道筋(アイテム的には金の針)を示すものになればと思います。 扱う範囲としては、あらゆる処理の基礎となる「画像の特徴点検出」を対象とします(実践 コンピュータビジョンの2章に相当)。なお、本記事自体、初心者である私が理解しながら書いているため、上級画像処理冒険者の方は誤りなどあれば指摘していただければ幸いです。 画像の特徴点とは 人間が
(2014/09追記) Deep Learning (ディープラーニング、深層学習) の技術を用いて、猫の品種を識別する方法の記事も書いています。もし興味があればご参照ください。 Deep Learningで猫の品種識別 (ショコラ - 吉祥寺 きゃりこ) ねこと画像処理 part 1 – 素材集めでは猫画像の集め方について整理しましたが、ここではその集めた猫画像を使って猫検出用の学習モデル(分類器)を作成しました。 技術的な内容詳細についてはブログの方に書いてありますので興味があれば。モデル配布についてはこのエントリーの後半で説明します。 ねこと画像処理 part 2 – 猫検出 学習はお馴染みのBoosting(アンサンブル学習手法の1つ)で。特徴量はモデル作成と検証を速く繰り返すことができるLBP特徴を採用しました。また、約7,000枚のアノテーションデータはクラウドソーシングを活用
ねこと画像処理。 (みかん – 吉祥寺 きゃりこ) 前回の ねこと画像処理 part 2 – 猫検出 では画像内の猫の顔を検出する方法を紹介しましたが、今回はディープラーニングの技術を用いて猫の品種を識別したいと思います。 学習データ ねこと画像処理 part 1 – 素材集めでは、自分で撮影した写真を学習データとして使うと書いたのですが、都内の猫カフェ等で出会える猫に限ってしまうと品種の偏りが大きくなってしまうので、ここではしぶしぶ研究用のデータセットを使うことにします。。ただ、Shiba Inuがあるのに日本が誇るMike Nekoが含まれていないのでデータセットとしての品質は悪いと思います。 The Oxford-IIIT-Pet dataset オックスフォード大学が公開している動物画像のデータセットです。その内猫画像は2400枚、クラス数は12で1クラスにつき200枚あります。今
はじめに 先日の Jubatus Casual Talks で、OpenCVを使った一般物体認識の概要と、注意しなければならないポイントについて発表させていただきました。 Jubatus opencv from Kazuya Gokita 詳しくは上記のスライドを御覧ください。 一般物体認識とは 要するに、画像を与えた時にそこに何が写っているのかを推定することです。 ゾウの写真ならゾウ、自転車の写真なら自転車だとコンピュータに判断させるのが目的です。 ところが、これがなかなか難しい問題であまりうまくいっていません。 Googleの画像検索は一見この問題を解決しているように見えますが、画像検索の場合はその画像の周辺にあるテキスト情報が利用できるのでちょっと違います。 たとえば、写真のすぐ下に「ウサギかわいい」って書いてあったらたぶんウサギの写真だろうと判断できます。 このような情報が与えられ
先日書いたOpenCVでアニメ顔検出をやってみた - kivantium活動日記の続編です。アニメ顔を検出するところまではうまくいったので、今度はキャラの分類をやってみようと思います。環境はUbuntu 14.10です。 ひと目で、尋常でない検出器だと見抜いたよ まずは分類に使う学習用データを用意します。投稿から半年以上経つのにまだランキング上位に残っている驚異の動画ご注文はうさぎですか? 第1羽「ひと目で、尋常でないもふもふだと見抜いたよ」 アニメ/動画 - ニコニコ動画を使います。 動画のダウンロード Ubuntuならaptで入れられるnicovideo-dlというツールを使います。 sudo apt-get install nicovideo-dl nicovideo-dl www.nicovideo.jp/watch/1397552685その後avidemuxでOP部分だけの動画を
やったこと 顔などの特定の物体がどこにあるかを認識するときにはカスケード分類器というものをつかいます(物体検出 — opencv v2.1 documentation)。ここではOpenCVによるアニメ顔検出ならlbpcascade_animeface.xmlで公開されているアニメ顔検出器を使っています。 #include <opencv2/opencv.hpp> using namespace std; using namespace cv; void detectAndDisplay(Mat image); CascadeClassifier face_cascade; int main(void){ //カスケードのロード face_cascade.load("lbpcascade_animeface.xml"); Mat image; image = imread("face.jp
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く