0

LaTeXで修論を書く会(mac版)

修論ではじめてTeXというものを使ってみて非常に良かったんだけど、ソフトの導入に手間取っちゃったので、俺が忘れないようにする為にも勉強会を開く事にしました

ATNDから参加登録してね
LaTeXで修論を書く会(mac版) : ATND

日時 / DATE :
2009/10/29 13:00 to 18:00

定員 / LIMIT :
30 人

会場 / PLACE :
SFC (神奈川県藤沢市遠藤5322)

MacでSFC用修論をTeXで書く会です。とりあえずこんな手順でやれば修論ができるはず!!

  • macportsをインストールする
  • macportsでplatex-utf8、bibtex、dvipdfmxをインストールする
  • とりあえずshokaiの修論texファイルをコンパイルしてpdfを生成してみる
  • cocoa emacsをインストールする(TeXの編集がしやすい)
  • jabrefで文献管理(bibtex形式で保存できる)
  • Amazonで本を検索してbibtex形式でjabrefにインポート
  • ACM Portalから論文をダウンロードしまくるスクリプト
  • ACM Portalからbibtex形式でjabrefにインポート
  • CiNiiからbibtex形式でjabrefにインポート
  • 図や写真を入れる
  • 参考文献を埋め込む
  • その他のファイル(提出用紙ファイルに貼り付ける表紙、背表紙、修論提出表)について

0

ML115 + Ubuntu9.10 64bit環境で音を出す

元サーバーマシンを、開発用のデスクトップマシンにした。
Windowsをインストールするとすんなりいくらしいんだけど、64bit版Ubuntuで音を出そうとすると大変だった。
PCIスロットが3.3V用で、5V用のサウンドカードだと切り欠きが合わなくて刺さらない。そして刺さっても64bitでのまともなサウンドドライバが無くて音がホワイトノイズだらけになる。

このUSBスピーカーを刺して他のサウンドデバイスを刺さないようにすれば音が出る。音質はたぶんそんなに良くないけど。

SANWA SUPPLY MM-SPU2WH USBスピーカー ホワイト
サンワサプライ
売り上げランキング: 798
おすすめ度の平均: 4.0
3 ちょっと不便。
4 安いし簡単
4 値段以上の価値はあります
3 音は及第点(値段の割には)
5 価格以上の音質


他にも、Creative Sound Blaster 5.1 VXを使うと音が全部ホワイトノイズになってしまうが、
alsamixer -Dpulse
alsamixer -Dhw
で音量をギリギリまで絞ると一応聞こえなくもなかった。
参考:[ubuntu-jp:1749] Jaunty において Creative Sound Blaster 5.1 VX 上で再生する音声が全てホワイトノイズに


あとはAppleのMac用の小さいキーボードと、Microsoftの光学式マウスの安い奴を使ってる。



0

僕の修了を祝ってください

卒業を祝ってくれると奥出研の先輩が言っていたんだけど、なんか自分で開催しろと言われたのでとりあえずATNDを立ててみた。
mixiやはてなのアカウントやOpenIDでログインして参加登録してください。

橋本修了のお知らせ : ATND
来週23日金曜、夜18時から都内でやります。


たぶん特に理由無く普通に集まってわいわいしたいだけなので、ATNDのメンツを見てピーンと来た人は参加していってください。
あんまり同期の人に連絡取ってないから久しぶりに会いたいなあ・・・takacとか・・

もう今金曜の朝だけど、ちょっと用事があるので土曜の夕方ごろの人数でどこかご飯を食べれる所を予約しようと思います(何か希望はありますか?)

ちなみに俺は次の日楽天テクノロジーカンファレンスに行く。

0

cvCalcOpticalFlowBM

オプティカルフローのサンプルコードをちょっといじって、カメラからの入力を表示してみた。
ブロックマッチングによるオプティカルフローを使った。

できたソースコード、Makefile


narupeko opticalflownarupeko opticalflownarupeko opticalflownarupeko opticalflownarupeko opticalflow

image.cpp

#include <cv.h>
#include <highgui.h>
#include <cxcore.h>
#include <ctype.h>
#include <stdio.h>
#include <iostream>
#include <boost/format.hpp>

using namespace std;
using namespace boost;

void detect_flow(IplImage *img, IplImage *img_p, IplImage *dst);

int main(int argc, char* argv[]) {
IplImage *img = NULL;
CvCapture *capture = NULL;
capture = cvCreateCameraCapture(0);
//capture = cvCaptureFromAVI("test.avi");
if(capture == NULL){
cerr << "capture device not found!!" << endl;
return -1;
}

CvSize size = cvSize(240, 180);
IplImage *img_resized = cvCreateImage(size, IPL_DEPTH_8U, 3);
IplImage *img_gray = cvCreateImage(size, IPL_DEPTH_8U, 1);
IplImage *img_gray_p = cvCreateImage(size, IPL_DEPTH_8U, 1);
IplImage *img_dst = cvCreateImage(size, IPL_DEPTH_8U, 3);

char winNameCapture[] = "Capture";
cvNamedWindow(winNameCapture, CV_WINDOW_AUTOSIZE);

while (1) {
img = cvQueryFrame(capture);
cvResize(img, img_resized);
cvCvtColor(img_resized, img_gray, CV_BGR2GRAY);
cvCopy(img_resized, img_dst);
detect_flow(img_gray, img_gray_p, img_dst);
cvShowImage(winNameCapture, img_dst);
cvCopy(img_gray, img_gray_p);
if (cvWaitKey(10) == 'q') break;
}

cvReleaseCapture(&capture);
cvDestroyWindow(winNameCapture);

return 0;
}

void detect_flow(IplImage *src_img1, IplImage *src_img2, IplImage *dst_img){
int i, j, dx, dy, rows, cols;
int block_size = 10;
int shift_size = 1;
CvMat *velx, *vely;
CvSize block = cvSize(block_size, block_size);
CvSize shift = cvSize(shift_size, shift_size);
CvSize max_range = cvSize(50, 50);

rows = int(ceil (double (src_img1->height) / block_size));
cols = int(ceil (double (src_img1->width) / block_size));
velx = cvCreateMat(rows, cols, CV_32FC1);
vely = cvCreateMat(rows, cols, CV_32FC1);
cvSetZero(velx);
cvSetZero(vely);

cvCalcOpticalFlowBM(src_img1, src_img2, block, shift, max_range, 0, velx, vely);

for (i = 0; i < velx->width; i++) {
for (j = 0; j < vely->height; j++) {
dx = (int)cvGetReal2D(velx, j, i);
dy = (int)cvGetReal2D(vely, j, i);
cvLine(dst_img, cvPoint(i * block_size, j * block_size),
cvPoint(i * block_size + dx, j * block_size + dy), CV_RGB(255, 0, 0), 1, CV_AA, 0);
}
}
}


Makefile
SRC = image.cpp
DST = image

prefix=/opt/local
INCPATH=$(prefix)/include
LIBPATH=$(prefix)/lib

OPT= -lcv -lcvaux -lcxcore -lhighgui

CC=g++ -O

CFLAGS= -I$(INCPATH)/opencv
LDFLAGS=-L. -L$(LIBPATH)


all:
$(CC) $(SRC) -o $(DST) $(CFLAGS) $(LDFLAGS) $(OPT)

0

橋本修了のお知らせ

先日卒業式があった。慶應SFCの政策・メディア研究科の修士号をもらった。(サーティフィケイトは無し)
今年度いっぱいは無職、ではなくKMDの訪問研究員扱いでCRESTに引き続き参加しつつ、未踏ソフトウェアの開発をする。


奥出研の先輩に修了祝いを自分で開催しろと言われていて、近いうちにやろうと思っている。ITリテラシーが高い人ばかりなのでATNDで告知してmixiやtwitterで呼ぶつもり。

ちなみに最近だれかと食事する度に、勝手に祝われていると思っておくライフハックを実践している。もう4回ぐらい祝われている計算になる。俺は幸せ者だ(脳内物質的な意味で)

R0012801

R0012805