タグ

ブックマーク / rest-term.com (26)

  • ねこと画像処理 part 3 – Deep Learningで猫の品種識別 – Rest Term

    ねこと画像処理。 (みかん – 吉祥寺 きゃりこ) 前回の ねこと画像処理 part 2 – 検出 では画像内のの顔を検出する方法を紹介しましたが、今回はディープラーニングの技術を用いての品種を識別したいと思います。 学習データ ねこと画像処理 part 1 – 素材集めでは、自分で撮影した写真を学習データとして使うと書いたのですが、都内のカフェ等で出会えるに限ってしまうと品種の偏りが大きくなってしまうので、ここではしぶしぶ研究用のデータセットを使うことにします。。ただ、Shiba Inuがあるのに日が誇るMike Nekoが含まれていないのでデータセットとしての品質は悪いと思います。 The Oxford-IIIT-Pet dataset オックスフォード大学が公開している動物画像のデータセットです。その内画像は2400枚、クラス数は12で1クラスにつき200枚あります。今

    ねこと画像処理 part 3 – Deep Learningで猫の品種識別 – Rest Term
    yuiseki
    yuiseki 2015/06/15
  • ねこと画像処理 part 2 – 猫検出 (モデル配布) – Rest Term

    ねこと画像処理。 (アイシャ – 池袋 ねころび) 前回のねこと画像処理 part 1 – 素材集めでは画像の集め方について整理しました。今回はその集めた画像を使って検出用の学習モデル(分類器)を作成したいと思います。それにはいろいろと準備が必要です。 モデル(分類器)の配布についてはこのエントリーの後半で説明します。 アノテーションデータの収集 学習モデルを作る前にのどの部分を検出するかを決める必要がありますが、今回はの顔(頭)部分の検出を行おうと思います。そのためのアノテーションデータ作成補助ツールを作成したのでそれを使ってひたすらデータを集めます。僕一人の作業だと限界があったのですが、クラウドソーシングによりネット上の顔も知らない有志達の協力のおかげであっという間にデータが集まりました。 アノテーションデータ作成補助ツールの作成にあたっては以下のサイトを参考にさせてもらいま

    ねこと画像処理 part 2 – 猫検出 (モデル配布) – Rest Term
    yuiseki
    yuiseki 2014/05/11
  • NginxとFFmpegを利用したHTTP Live Streaming配信 – Rest Term

    HTTP Live Streaming(HLS)配信の基的な手順をまとめます。 去年の記事 「NginxのHTTP Pseudo-Streamingを試す」 ではNginxの疑似ストリーミング配信モジュールを試してみましたが、機能不足のため実サービスで使うのは難しいです。そのためWebサーバでストリーミング配信を行いたい場合は今回紹介するHLSなどの利用が推奨されます。 HTTP Live Streaming(HLS)とは Apple公式のドキュメントを読む方が理解は進むと思いますが、一応ここでも簡単に概要を。 HTTP Live Streaming (also known as HLS) is an HTTP-based media streaming communications protocol implemented by Apple Inc. HTTP Live Streami

    NginxとFFmpegを利用したHTTP Live Streaming配信 – Rest Term
    yuiseki
    yuiseki 2014/05/09
  • RedisのLuaスクリプティング機能について – Rest Term

    the Lua interpreter built into Redis 僕のRedisについての知識はv2.2くらいで止まっていたので、それ以降のRedisに備わった機能を調べているんですけど、その中でもv2.6からサポートされたLuaスクリプト実行環境について今回は整理します。 技術Wikiの方にもRedisについてのメモを残しています。 * Redis – Tech Note 環境 CentOS 5.8 (x86_64) Redis 2.6.10 (malloc=jemalloc-3.2.0 bits=64) Pythonクライアント (redis-py 2.7.2) ※ Redis 2.6で利用できるLuaのバージョンは5.1です。 Lua言語について Lua – Wikipediaによると、 Lua は、C言語のホストプログラムに組み込まれることを目的に設計されており、高速な動作

    RedisのLuaスクリプティング機能について – Rest Term
    yuiseki
    yuiseki 2014/05/02
  • 機械学習ライブラリ SHOGUN入門 – Rest Term

    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という機械学習ライブラリを試してみました。目的は一般物体認識における分類タスクでMultiple Kernel Learning(MKL)やLatent SVMの実装を試すことなのですが、まずはインストール方法と簡単な使い方を調べるところから始めます。 また、この記事の内容はQiitaにも投稿しています。 * 機械学習ライブラ

    機械学習ライブラリ SHOGUN入門 – Rest Term
    yuiseki
    yuiseki 2013/11/18
  • JavaScriptでPoisson Image Editingによる滑らかな画像合成 – Rest Term

    yuiseki
    yuiseki 2013/08/04
  • Redis - Tech Note

    このページではインメモリKVS(Key-Value Store)のRedisに関するメモを書いています。 ブログでもまとめてあるので参考までに。 Redisの監視/分析系ツールまとめ インメモリKVSのRedisについて Redis AS3クライアント 環境 CentOS 5.8 (x86_64) Redis 2.2.8, 2.6.10 Rubyクライアント redis-rb Pythonクライアント redis-py PHPクライアント predis Redis data types (型について) Redisは基の文字列型の他にリストやセット、ハッシュなどの様々な型があるが、それぞれの型に対するコマンドがatomicに動作するという特徴を持つ (参照: Command reference – Redis)。 String (文字列) 基となる文字列型。整数文字列をセットしてインクリ

  • Redisの監視/分析系ツールまとめ « Rest Term

    Redis関連の監視/データ分析系ツールについてメモしておきます。 随時追記予定。実務で有用なツールが他にありましたら教えていただけると嬉しいです。 環境 CentOS 5.9, Ubuntu 12.04 (x86_64) Redis 2.6.10 (※ CentOSの6.x系への移行は足踏み状態。相当大変ですよね。。) 以下の順に紹介していきます。 Redisコマンド Redis Sentinel Redis Live Redis Faina Redis Sampler redis-top Nagiosプラグイン Zabbixテンプレート Muninプラグイン Cactiプラグイン 最後のCactiプラグイン以外は実際に導入して試してみました。以降、見出しに各プロダクトへのリンクを貼っておきます。 Redisコマンド ツール紹介の前にまずは基から。Redisには監視やデータ解析用途で使

    Redisの監視/分析系ツールまとめ « Rest Term
    yuiseki
    yuiseki 2013/07/02
  • ScalaでOpenCVを使って画像処理 – Rest Term

    でインストールできます。簡単ですけどcmakeのオプションを自由にいじれないのでオススメできないかも。 sbt(Simple Build Tool) sbt(Simple Build Tool)はScala/Java用のビルドツール。ライブラリの依存関係を自動で解決してくれるし、Scalaで書かれたDSLを使ってビルド設定を簡潔に記述できます。今回はEclipseのようなIDEは使わずにemacs + sbtでストレスなく開発ができました。 参考: 始める sbt OpenCVのインストールに成功したら、ライブラリファイル(opencv-244.jar, libopencv_java244.so)をsbtプロジェクトのlibディレクトリにコピーしておきます。sbtが自動でクラスパスを追加してくれます。 Hello OpenCV in Scala Javadocを参考にしながら進めます。 *

    ScalaでOpenCVを使って画像処理 – Rest Term
  • OpenCV for Android入門 – カメラ編 – Rest Term

    ここ最近はAndroidアプリ開発の勉強をしています。今回はOpenCVでデバイスのカメラを利用した動画像処理を試してみました。 技術Wikiの方にもAndroid関連のメモを残しています。 * AndroidTech Note * OpenCV for AndroidTech Note Portions of this page are modifications based on work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License. 環境 * OpenCV4Android SDK 2.4.4 (今回はJava APIのみ使用) * 検証デバイス: Galaxy S2 LTE(Android

    OpenCV for Android入門 – カメラ編 – Rest Term
    yuiseki
    yuiseki 2013/03/12
  • Pythonの数値計算ライブラリ NumPy入門

    Scientific Computing Tools For Python — Numpy NumPy は Pythonプログラミング言語の拡張モジュールであり、大規模な多次元配列や行列のサポート、これらを操作するための大規模な高水準の数学関数ライブラリを提供する。(via Wikipedia) これまで知識があいまいだったNumPyについて、もう一度おさらいしたいと思います。NumPyはSciPyと併せて科学技術計算でよく利用されています。また、高速に行列演算ができるのでOpenCV(コンピュータビジョンライブラリ)でもNumPyを利用したPythonインタフェースが提供されるようになりました。 OpenCVPythonバインディングについては去年のエントリーでも取り上げていますので参考までに。 * さくらVPSOpenCVをインストールしてPythonから使う [2017/04/2

    yuiseki
    yuiseki 2013/03/11
  • OpenCV - 関数リファレンス - Tech Note

    画像の複製 cvCloneImage()/cvCopy() IplImageをコピーするには, cvCloneImage() → 明示的なメモリ確保が不要 cvCopy() → 明示的なメモリ確保が必要 のどちらかを利用します. IplImage* cvCloneImage(const IplImage* src); src コピー元のIplImage. cvCloneImage() の場合,明示的なメモリ確保は不要. IplImage *img = cvLoadImage("lena.jpg", CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR); IplImage *clone = cvCloneImage(img); void cvCopy(const CvArr* src, CvArr* dst, const CvArr* mask=N

  • OpenCV - 数学演算 - Tech Note

    行列の乗算は cvmMul(), 行列の要素同士のかけ算は cvMul() なので注意. 線形問題または最小二乗法問題を解く 連立方程式を解く場合,''cvSolve()''を利用して解くこともできます. int cvSolve( const CvArr* A, const CvArr* B, CvArr* X, int method=CV_LU ); A 入力行列. B 線形システムの右辺. X 出力解. method 逆行列の解法. CV_LU - 最適なピボット選択によるガウスの消去法 CV_SVD - 特異値分解 CV_SVD_SYM - 対称正定値行列のための特異値分解. 連立方程式を解く #include<stdio.h> #include<cv.h> int main(int argc, char **argv) { // 行列の要素 float dataA[] = {1.0

  • HLAC: 高次局所自己相関特徴 – Rest Term

    今回は画像特徴量の1つである高次局所自己相関特徴 (HLAC: Higher-order Local AutoCorrelation)について。 HLACは画像認識に対する基的な要望としての位置不変性および加法性を満たすものであり、一次にとどまらない高次の相関に基づく統計的特徴量になっています。現在では様々なHLACの発展系が生まれていますが、今回はその基となるアルゴリズムについて整理したいと思います。 基アルゴリズム 自己相関関数を高次に拡張したN次の自己相関関数は、対象となる画像領域内の位置 r=(x, y) における画素値を f(r) とすると、その周りのN個の変位 a1, a2, …, aN に対して次式で定義されます。 基的なHLAC特徴はこの関数に基づいた画像特徴で、実際には相関の次数を二次まで(3点相関)、変位も局所領域(3×3など)に限定して利用します。そのため変位

    yuiseki
    yuiseki 2012/06/10
  • OpenCV - Tech Note

    OpenCVとはオープンソースの画像処理用ライブラリです. このページは入門者向けの内容になっています. 注) このページはOpenCV 1.0の内容です,注意してください. 以下の項目は別ページに. OpenCV - 関数リファレンス OpenCV - HighGUI OpenCV - 数学演算 OpenCV - 2.x version 2.xについてはこちら OpenCV for Android Android用はこちら OpenCV 基礎 基構造体 最低限覚えておくべき構造体. IplImage OpenCVの多くの関数が,構造体IplImageをその引数に取ります. typedef struct _IplImage { int nSize; /* sizeof(IplImage) */ int ID; /* バージョン (=0)*/ int nChannels; /* 1,2,3

  • OpenCV - HighGUI - Tech Note

    OpenCVでは簡易GUIを扱えます. ただ,JavaのSwing等と比べてかなり貧弱なので高度な操作はできません. ウィンドウを生成・破棄する ウィンドウを生成するには''cvNamedWindow()'',破棄するには''cvDestroyWindow()''を使います. int cvNamedWindow(const char* name, int flags=CV_WINDOW_AUTOSIZE); name ウィンドウの識別に用いられるウィンドウ名で,ウィンドウのタイトルバ ーに表示される. flags ウィンドウのフラグ.CV_WINDOW_AUTOSIZEのみ. void cvDestroyWindow(const char* name); name 破棄するウィンドウの名前. また,生成したウィンドウを一度で全て破棄するには''cvDestroyAllWindows()''

  • MongoDB GridFSについて – Rest Term

    今回はMongoDBのGridFSを少しだけ触ってみました。 This allows us to efficiently store large objects, and in the case of especially large files, such as videos, permits range operations (e.g., fetching only the first N bytes of a file). MongoDBはデータをBSONと呼ばれる形式で扱っていますが、一つのBSONオブジェクトに対して16MBの制限(v1.7未満のバージョンだと4MB)があるようです。GridFSはMongoDBに巨大なファイルを格納するための仕様で、公式でも上記引用の通り動画像ファイルなどを扱うことを想定しているので、ここでは動画配信サービスのバックエンドの一部に使えるかどうか考

    MongoDB GridFSについて – Rest Term
    yuiseki
    yuiseki 2012/04/16
  • DotCloudでのMySQL,Redis,MongoDBの使い方 – Rest Term

    前回のエントリーDotCloudが素晴らしいに引き続きDotCloudで遊びます。 今回はDotCloudの「プログラミング言語やミドルウェアを自由に選べる」という特徴を活かしていろんな組み合わせを試してみたいと思います。 * メニュー PHP + MySQL Ruby + Redis (Sinatraを利用) Python + MongoDB (Flaskを利用) PHP + MySQL この組み合わせでのシステム開発はなんだかんだ言って仕事で慣れている方も多いのではと思います。もちろんDotCloudでもPHP + MySQLの環境をサポートしています。アプリケーションのデプロイまでの簡単なフローは前回のエントリーに書いたのでそちらを参照してください。 * 環境 PHP 5.3.2 MySQL 5.1.41

    DotCloudでのMySQL,Redis,MongoDBの使い方 – Rest Term
    yuiseki
    yuiseki 2012/03/27
    べんり
  • DotCloudが素晴らしい – Rest Term

    これからのPaaS注目株であるDotCloudを遅ればせながら少し試してみました。つい最近ベータ期間を終了し、正式サービスを開始したとのことです。ヒゲのおじさまカッコイイ。 * [追記] 各ミドルウェアも使ってみました。続きの記事はこちら。 DotCloudでのMySQL,Redis,MongoDBの使い方 DotCloudの特徴としては上のビデオや下の図を見て分かるように、プログラミング言語やミドルウェアを選択できるという点です。つまりユーザーはこれらの技術を自由に組み合わせてシステムを構築することができます。これはGAEやHerokuなど利用技術に制限のあるPaaSとの大きな違いです。 公式のチュートリアルを読めば使い方はすぐわかるのですが、一応ここでもデプロイまでの手順を簡単に追ってみます。先日のRubyKaigiの興奮冷めやらぬ今、利用言語はRubyで。 と言いつつ、DotClou

  • インメモリKVSのRedisについて – Rest Term

    * wiki(Tech Note)のページ追加 このエントリーの内容を整理してwikiにもRedis関連のページを追加しました。 Redis – Tech Note Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. インメモリKVSのRedisを少し触ってみました。 さくらVPS(CentOS 5.6)にインストールしようと思ったのですが、yumのレポジトリだと今は古いバージョンしか入れられないようなのでソースからビルドしました。手順は公式の通りに。(参照: Download – Redis) また、/

    インメモリKVSのRedisについて – Rest Term