CGとCVの日記

Computer GraphicsとComputer Visionについて

macでntfsに書き込み

NTFSとはwindowsで使われてるファイルシステムのことで,MacからはReadしか出来ませんでした.
Snow Leopardでは非公式ですがWriteもできるらしいです.

やり方は次のとおりです.

まず設定ファイルを作ります
$ emacs /etc/fstab

内容は
UUID=XXXX none nkfs rw
です.nkfsのディスクに対するデフォルトの設定を記述します.
UUIDは
$ diskutil info [disk directory]
で確認できます.

そして
$ sudo diskutil mount [disk directory]
このコマンドを実行すると,Read and Writeが可能な状態でマウントできます.

最近Macがよく落ちるようになった.
原因はいつもUSB周り.
バックアップとらないと.
time capsule買おうかなぁ.

Macbook pro, iPad, iPhone

ぼくはMacbook Pro(以下MBP), iPad, iPhone4を持ってます.

よく友だちに必要ないだろ!!と言われるので,ぼくなりの使い分けを書いてみようと思います.

まずMBPから.
f:id:daiki_yamanaka:20100711191422j:image
・プログラミングできる
  これは結構重要で,バイトや授業などでどうしてもプログラミングする必要があるので,実行環境とある程度のパワーがあるマシンが必要なわけです.

・フル&物理キーボード
  iPadではソフトウェアキーボードが使えますが,やっぱりぼくはアナログ派なようで,しっくり来ません.

ということでMBPは必須です.

次にiPad
f:id:daiki_yamanaka:20100711191515j:image
・BookReaderとして 
  ぼくは他人から薦められたりするとすぐに本を買ってしまう質で,積ん読本が家にたまってます.さらに心配性なので,なんか読みたくなるだろうと考えてしまって,毎日大量の本をリュックにいれて学校に行ってました.
それがたったの600gに収まるということで買わないわけにはいきませんでした.
Kindleでもいいじゃないかとツッコまれそうですが,確かにそうです.(笑)
まぁでもここでKindleにしたら一貫性が疑われるんじゃないかということで.

あとbookreaderそのものについてですが,日本ではまだサービスが確立されていないのでまだなんとも言えません.
欲しい本も日本語のものは結局紙ベースです.
でもスキャナがあれば毎日持ち歩いている書類等をまとめれるのでよしとします.
ということでscansnap欲しいです.

最後にiPhone
f:id:daiki_yamanaka:20100711183259j:image
・電話
  携帯電話をiPhoneしか持ってないので必要です.

bluetooth keyboardと組合わせると最強.
iPhoneの入力に不満があったのですが解消されました.キーボードの大きさもMBPといっしょなので快適です.

・優秀なアプリたち
  Google Maps, RSSリーダー, Evernote, TwitBirdなど使いがっての良いものがたくさんあります.

Android携帯でもいいじゃないかと言われると確かにそうなのですが,新しいもの好きだったぼくがガラケーからスマートフォン
に買い換えるときに発売されていたということでiPhoneの勝利です.(Android端末も欲しいです.Droid xとかdesireとかEVOとか...



こんなふうに書くとapple信者だと思われそうですが,決してそうではありません.
ぼくがものを買うときに,タイミングと値段がたまたまあっただけです.(iPadのときは微妙ですが...

現にvaio Zやvaio X, Think padなど欲しいものはたくさんあります.

まとめると,やっぱりハードウェアっていいものですね!

最後に全員の写真です.
f:id:daiki_yamanaka:20100711191553j:image

rovio

今バイトでrovioをいじってます.

f:id:daiki_yamanaka:20100711185613j:image

rovioはカメラ付きのロボットでwifi経由で遠隔操作ができます.
値段は300$くらい.

オムニホイールが使われてて,真横に移動できるのがいいです.

ここに詳しく書いてあります.↓
http://www.wowwee.com/en/products/tech/telepresence/rovio/rovio


APIを探してみるとpython用のは発見しましたが,今回の開発で使うcのものはありませんでした.

pythonでserverを書いてもいいかなぁと思ったんですが,のちのち画像処理もやるので,そこがボトルネックになったらやだなぁということでcでAPIを書くことにしました.

rovioの中でHTMLのサーバーが動いてて,HTML経由で要求を送ると動いてくれます.

動かすのは簡単でしたが,画像の取得に困りました.

バイナリで送られてくるので,それをファイルに書き出せばできる予定だったのですが,jpegが壊れていると怒られます.

boostを使ってて,rovioから送られてくるデータをstrambufからiostreamに変換するときに
1番後ろの1byteをコピーして最後に追加してるみたいで,そこが原因でした.

Javaとかだったら,API充実してるからHTMLのパーサーぐらいすぐ見つかるんだろうなぁとか考えたけど,深いとこまで操作できるのがcの短所でもあり長所でもあるのかなとしみじみ思いました.


とりあえずrovioかわいいので欲しいです.

gumstix起動はできたが...

数年前ちょっとはやってたらしい?gumstixを入手しました.

gumstixについて簡単にいうと,「Gum Stix」の大きさでLinuxがはしる
コンピュータ?(あってんのかな)です.
詳しいことはここに書いてあります.
http://www.gumstix.com/

裏から見るとこんな感じ
f:id:daiki_yamanaka:20100711183248j:image
真ん中にある板がgumstix本体です.これの上にCPU, microSDスロット,bluetoothモジュール,wifiモジュールが乗ってます.

専用のIOボード経由で感圧式のタッチパネル液晶モニタとも接続できます.
こんな感じです.
f:id:daiki_yamanaka:20100711183240j:image

動かすだけなら簡単で,こんな感じです.
f:id:daiki_yamanaka:20100711183326j:image

ブート用のmicroSDをつくろうとしたんですが,Macでは説明してあるのといろいろ違うようで,
悪戦苦闘中です.

Androidのせたいなぁ.

留学

大学3年になって留学を考えるようになりました.

理由は幾つかあるのですが,一番大きかったのは4月にアメリカに行ったことだと思います.

日本から見ると華やかに見えますが,実際に行ってみると貧富の差が激しく衝撃を受けました.

日本はなんて安全でぬるいんだという思いと同時に,これはやっぱり日本で生活してたら勝てないなという気持ちになりました.

前々から院では専攻を変えようと思ってて,アメリカの大学院でははじめの1~2年間はがっちり勉強するみたいなので,時期的にもちょうどいい気がします.

学費ですが,いろいろ調べた結果,理系の学生はTAやらRAやらでお金を貰えるみたいで,あまり困らないという話を聞きました.
日本からも奨学金をもらえばなんとかやっていけそうな気がします.

あと推薦状やTOFEL,GREなど心配ごとはありますが,あと1年半しっかり準備して行きたいと思います・

google app engineでtwython

google app enginetwitterbotを作成してみることにしました.
機能は試験の日程やら,レポートの期限を教えてくれる,というようにする予定です.

さっそくちょっと作ってみましたが,twitterにメッセージをアップするコードはすごく短いです.

import twython
api=twython.setup("Basic",username="",password="")
api.updateStatus("Hello world!!")

先人に感謝です.
gaeではローカルでのテストが簡単なので,試してみたのですが,

No module named _ctypes

というエラーが出てしまいました.
ctypesとはcで書かれたライブラリが使えるpythonのライブラリなのですが,twythonから呼び出しているみたいでした.

http://inside.ascade.co.jp/node/54

なにやらgccが悪さをしてるみたいで,どうにもなりません.

しかし,gaeはgoogleのインフラ上でプログラムを動かすことができるので,動くことは動くのですが,やっぱりローカルでデバッグできないのはつらい.

でもいちおう動いたのでよしとします.