タグ

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

  • 機械学習ライブラリ 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
  • JavaScriptでPoisson Image Editingによる滑らかな画像合成 – Rest Term

  • 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
  • Hadoop - Tech Note

    mapred.child.java.opts の設定は、JobConf実行時に設定可。 (hadoop-site.xml の設定項目は実行時に設定できるものとできないものがある) public class Test { public static void main(String[] args) throws Exception { JobConf conf = new JobConf(Test.class); conf.setMapperClass(Map.class); // 子JVMの最大ヒープサイズを設定 conf.set("mapred.child.java.opts", "-Xmx512m"); ... } } SequenceFile SequenceFile は、<key, value>形式でデータを保持する。テキストをそのままMapで読み込むと、keyにバイトオフセット、

  • 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
  • Flashで画像処理するときのコツ – Rest Term

    注意) レンダリングの高速化とは別レイヤーの話になります。 去年の記事でAPIレベルの考察はしていますが、今回はもう少し踏み込んで考えてみます。 get/setVector() vs get/setPixels() その前に BitmapData.getVector() と BitmapData.getPixels() のシグネチャを再掲。 両APIともピクセルデータを一次元のコンテナに詰め込むメソッドです。 getPixels(rect:Rectangle):ByteArray ピクセルデータの矩形領域からバイト配列を生成します。 getVector(rect:Rectangle):Vector.<uint> ピクセルデータの矩形領域からベクター配列を生成します。 速度を比較すると get/setVector() の方が高速です。 が、 重要なのはAPIの実行速度ではなく、 「取得したデ

    Flashで画像処理するときのコツ – Rest Term
  • HTML5でConvolutionFilter – Rest Term

    HTML5のcanvasを使って簡単な画像処理をやってみます。 試してみたのは基的な畳み込みフィルタ。 今回はAS3のConvolutionFilter風のインタフェースで作りました。 Demo: HTML5 Image Processing (Convolution Filter) 汎用的に作ろうとすると少し時間がかかりそうだったので、ひとまず畳み込みフィルタの部分だけ。 引数はAS3のものよりずっと少なく、matrix, divisor, bias の3つ。 matrixXやmatrixYも用意してないのでフィルタカーネルのサイズは3×3限定だし、 異常系の処理も不十分で修正が必要ですが;; 他のフィルタ類は時間を見つけて作ってみようと思います。 ・クライアント例 var context = document.getElementById('Canvas').getContext('

    HTML5でConvolutionFilter – Rest Term
  • Thrift + OpenCV – Rest Term

    Thriftを利用してOpenCVの関数をスクリプトから呼んでみます。 といってもRPCで繋げるだけで特別なことをする必要はありません。 ここでは、画像の各チャンネルの平均値と標準偏差を求めてみます。 サーバ側でOpenCVの cvAvgSvd() を利用すればOK。 まず、最初にRPCのインタフェースをThrift IDLに書きます。 ここでは、平均と標準偏差を求める関数を2つ作ることにしました。 各チャンネルの値が欲しいので戻り値は list<double> に、 引数は画像ファイル名を指定したいので string にしておきます。 * cv.thrift (サービス名は CV) service CV { list&lt;double&gt; calcAvg(1: string img) list&lt;double&gt; calcSdv(1: string img) }

    Thrift + OpenCV – Rest Term
  • 1