ねこと画像処理 part 2 – 猫検出 (モデル配布)

ねこと画像処理。 (アイシャ – 池袋 ねころび) 前回のねこと画像処理 part 1 – 素材集めでは猫画像の集め方について整理しました。今回はその集めた猫画像を使って猫検出用の学習モデル(分類器)を作成したいと思います。それにはいろいろと準備が必要です。 モデル(分類器)の配布についてはこのエントリーの後半で説明します。 アノテーションデータの収集 学習モデルを作る前に猫のどの部分を検出するかを決める必要がありますが、今回は猫の顔(頭)部分の検出を行おうと思います。そのためのアノ…

C/C++のユニットテストフレームワーク CppUTest が便利

今回はC/C++のユニットテストフレームワークのひとつである CppUTest について調べてみました。TDDと相性が良いと言われている Google Test と比較して、CppUTest はマルチプラットフォーム対応がより充実しているためWeb系に限らず組み込み系などでも幅広く使われているとのことです。 参考: テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計 これまで不満はありつつも使い慣れているからという理由で CppUnit をずっと使ってい…

WebRTC + WebGLによる顔画像合成デモの紹介

Tech Crunchで紹介されていて、国内外の方からのお問い合わせが僕の方にもいくつか来てたのでご紹介を。 これはまたクールで不気味なアプリ―FaceSubはそのうち他人の顔を借りてビデオチャットができる? Face substitution (デモへのリンク) 以前、このブログで JavaScriptでPoisson Image Editingによる滑らかな画像合成 というエントリーを書きましたが、そこで公開したJavaScriptのモジュールをノルウェーの方に上記のデモで使っていただきまし…

2014年スタート

新年あけましておめでとうございます。 2013年の振り返りと2014年の抱負などを。 まずは振り返りから。 仕事の方では、部門異動後の業務もそこそこにこなし、プライベートでの勉強の成果もまずまずといったところ。でもブログでのアウトプット量は2012年と同様にイマイチな結果に終わりました。 NginxとFFmpegを利用したHTTP Live Streaming配信 OpenCV for Android入門 – カメラ編 ScalaでOpenCVを使って画像処理 RedisのLuaスク…

ねこと画像処理 part 1 – 素材集め

ねこと画像処理。 ※ 本エントリーには技術的な内容はありません。 ねこが写った画像に対していろいろな画像処理を施していく。今回はデータセットとして利用する画像素材集めに関するエントリー。 素材集め 機械学習系のタスクも想定しているので、大量にデータセットを集めておこう。Web上から取ってくるのでは味気なくてつまらない、邪道である。それに著作権の問題もある。自分の足を使ってたくさん集めて回るんだ。もふもふするんだ。 飼いねこを撮る 野良/地域ねこを撮る ねこカフェのねこを撮る 僕は実家で2匹のねこ…

構成管理ツール Ansibleを試す (FFmpegのPlaybookを作る)

今や構成管理ツールは百花繚乱、何を使ったらいいのかよくわからないのが正直なところなのですが、以前から気になっていたAnsibleをちょっと触ってみました。まだ入門レベルのことしか試していませんが感想などを書きたいと思います。 Ansible is a radically simple IT orchestration engine that makes your applications and systems easier to deploy. Avoid writing scripts or…

機械学習ライブラリ SHOGUN入門

The machine learning toolbox’s focus is on large scale kernel methods and especially on Support Vector Machines (SVM) * The SHOGUN Machine Learning Toolbox サイトのデザインどうにかしたらいいのにとか将軍ってなんだよとかいろいろあるかと思いますけども、プロダクトとしては素晴らしいという噂を聞くので今回このSHOGUNという機械学習ラ…

JavaScriptで画像のクラスタリングによるドット絵風加工

前回のJavaScriptでPoisson Image Editingによる滑らかな画像合成に引き続き、HTML5 Canvasを使ったJavaScriptによる画像処理の一例を紹介します。 今回は画像の画素値に対するクラスタリング(分類)を画像加工用途に応用します。クラスタリングには各画素のRGB値を特徴ベクトル(次元数3)としてk-means法と呼ばれる手法を使って行います(実装上はk-means法の初期値選択アルゴリズムを改良したk-means++法を利用)。以下のサイトでOpenCVを利…