今日の一言
2010/08/12(Thu) もょもと [長年日記] 1:40現在弱いにわか雨/積乱雲 27℃
_ [C++][研究関係][Linux][Ubuntu][FC][Windows]C++で書いた自作プログラムにlibsvmを導入
まず、ここ(http://www.csie.ntu.edu.tw/~cjlin/libsvm/)からlibsvmをDL。で、解凍してReadMeを熟読。
とりあえず、makeを打てば「svm-predict」「svm-scale」「svm-train」の3つのプログラムが出来上がるので、それで動作を確認する。
*ライブラリとして使いたい場合も、これらのソースがサンプルとして使える。
また、「svm-toy」にGUIのサンプルがあるので、それを見るのもいいかもしれない。
*ただし、コンパイル時にエラーが出る場合があるので注意(あとで解決策を書く)
自作のプログラムでlibsvmをを使う場合も、基本的には「svm.cpp」,「svm-train.c」,「svm-scale.c」,「svmpredict.c」,「svm.h」の5つのファイルを使うだけでよい。
具体的な使い方等はReadMeに書いているが、端的に言うと、自分のプログラムの頭に
#include "svm.h"
を書き、Makefileに”svm.cpp”を加える。
以上!
参考:
http://www.bi.a.u-tokyo.ac.jp/~tak/libsvm.html
_ [C++][研究関係][Linux][Ubuntu][FC][Windows] libsvm内のsvm-toy/gtkをコンパイルする
makefileを若干書き換え。
#CFLAGS = -Wall -O3 -g `gtk-config --cflags` CFLAGS = -Wall -O3 -g `pkg-config gtk+-2.0 --cflags` #LIBS = `gtk-config --libs` LIBS = `pkg-config gtk+-2.0 --libs`
さらに、「callbacks.cpp」に
#include <cstdlib>
を書き加える。
このプログラムで出来ることとしては、
1. 画面上でクリックすると点が打てる. いくつか点を描く. 2. Change をクリックして,また点をうつと違う色の点が打てる.これでいくつかの点を描く. 3. Run ボタンをクリックすると,描いた2つの点の集合を分離するような絵が描かれる.
以上!
_ [C++][研究関係][Linux][Ubuntu][FC]自作プログラムからサウンドボード(マイク&スピーカ)をいじる(A/Dボードっぽく使う。オシロスコープ風)
こちら(http://homepage3.nifty.com/rio_i/lab/oss/000prologue.htm)を見れば、大抵のことはできるようになる。
応用すれば、48kHz,1chのA/Dボードっぽい使い方も可能。
*ただし、同じ電圧をかけつづけた場合にはまともな値が取れない?だれか詳細プリーズ。
簡易オシロスコープとして信号の波形を摂りたい場合には、ここ(http://web.mit.edu/annakot/MacData/afs/dev/system/rhlinux/redhat-6.2-docs/HOWTOS/translations/ja/html/HAM-HOWTO.html)の「scope-0.1.tar.gz」が非常に参考になる。
古い記事っぽいので、直接X11をいじっていたりして非常に懐かしかったりする。
まあ、遊びでいろいろやってみる分には十分なネタだと思う。