ラベル Mac の投稿を表示しています。 すべての投稿を表示
ラベル Mac の投稿を表示しています。 すべての投稿を表示

2012-08-16

[Mac] Processing でカメラが

最近は教育的なこともあって,Processing を使っている.
教えるときには,まず学生さんも環境を整えないとだめだが,
OpenCV なんかだとインストールも大変な作業になったり,
Mac と Windows の違いやらを考えたりと,いろいろ面倒くさい.

Processing ならインストールも簡単なので,
するにプログラムの話からはじめることができる.
関数もできるだけすっきりしているのでよい.

ところが,mac で mountain lion にアップデートしたとたんに,
カメラが使えなくなってしまうという問題が出てきてしまった.
Java もインストールし直しだから,そのあたりで何か問題がでたのか?
それとも Processing を再インストールする必要があるのか?

などと思って,よくよく調べてみると,どうも Mountain Lion の問題ではなく,
MacBook Pro 特有の問題らしい.

http://forum.processing.org/topic/can-t-connect-to-camera-please-help

「システム環境設定」-> 「省エネルギー」
の「グラフィックスの自動切り替え」をオフにすると無事カメラに接続できるようになった.

2011-05-24

[Mac] iPhone で3D映像:i3D

iPhone でも3D映像が楽しめるというアプリが登場したそうな.
こいつはびっくり.



いったいどうやっているのか? applelinkage の記事には

i3Dは、ジョセフ・フーリエ大学グルノーブル情報科学研究所人間・コンピューター相互作用エンジニアリング研究グループのJeremie Francone氏とLaurence Nigay氏が開発したアプリで、前面カメラでユーザの顔をリアルタイムで追跡し、ユーザの目線にあわせて画像の視点を変えて擬似的に3D表示するものです。価格は無料です。

とあり,顔追跡で実現しているのだとか.
原理的には顔を追跡することでできるというのは理解できるけど,
本当に iPhone でやってしまうというのがすごいですなぁ.

2010-11-18

[Mac] プリンター蓋の開け閉めで直る

プリンターの調子が悪く四苦八苦する.

Mac から OKI の C610dn を使っているのだが,最近頻繁に

「回復可能:ネットワークホスト '192.168.100.100' はビジー状態です(30 秒以内に再試行します)」

などというメッセージが出るようになった.回復可能と書かれているものの,いっこうに印刷される気配がない.
プリンターの方は,

「プリント可能です」

なんでやねん..

ドライバーをインストールし直したり,プリンターのネットワークケーブルを調べたり,
コンピューターとプリンターの双方の電源を入れ直してみたり,
あるいは,電源をオフにしてしばらくおいてみたり,ネットワークアドレスを確かめたり,
ありとあらゆることをやってみたが,ぜんぜん繋がらない.

これに2時間近く費やして,精根尽きはてたとき,
ふと何気なくプリンターの蓋を開けて閉めるということをしてみると..

ヴイーン.ウォンウォンウォンウォン...

なんと!動き出して印刷された!
意味がわからんぞ!

2009-04-07

[Mac] CalendarServer を導入する

ラボの共通カレンダーは google calendar で管理されているのだが,
ボスから,

「google calendar は,なんだか信用ならへんなぁ.
 自分の情報がすべて google に握られているのが気に入らん.
 ラボのサーバーでなんとかならんか,」

というワガママを言われて,ラボのサーバーに caldav のサーバーをたてることにする.

ラボのサーバーは MacOSX server を使用している.
このOSのバージョンが leopard であれば,カレンダーサーバーが
OS に組み込まれているので,すぐに使用可能になるのだが,
あいにく,バージョンは一つ前の tiger なので,自分でインストールしなければならない.

使用したのは MacOS forge の CalendarServer.
この「MacOS X でカレンダーサーバーを作ろう」というページを参考にする.

インストールは,自分の leopard のマシンにテストで
インストールしたときは,かなり簡単だったが,
tiger のサーバーにインストールするときに,ちょっと問題が発生.
"PyOpenDirectory" を Build するところでエラーがでて止まってしまった.
どうせユーザー管理は XML ファイルをベースにするので必要がないので,
"run" ファイルの中の PyOpenDirectory を build する部分をコメントアウトすると
あとはスルスルとうまくビルドできた.

インストールは思ったより簡単だったのだが,
接続のところで,ちょっとつまづいた.
いろいろなところで紹介されているように,接続先の URL に

localhost:8008

をしてもうまく接続できず.

このページに紹介されているように,
ちゃんとした URL を指定しなければならなかった.
これがわからずかなり四苦八苦する.

また,マシンの起動時に自動的に立ち上がるようにしようとしたが,
上記のサイトにあるように plist ファイルを書いても,
なぜかうまく起動できなかった.
launchctl は謎多し.

とりあえずは,手動で起動することにして,ポートを用意して
運用準備オーケー.

2009-03-12

[Mac] Xgrid の例

同僚の Guerra さんが Xgrid の簡単なサンプルプログラムを作ってくれたので試しました.

まず,以下のようなプログラムを "testjob.py" という名前を作成しておきます.


#!/usr/bin/env python
from sys import argv
import socket

# Get job id from command line arguments
jobid = argv[1]

# Print something to stdout
print 'Hello World!'
print 'I¥'m job', jobid
print socket.gethostname()

# Write something to a file. The name of
# the file depends on the job id
file = open('message-from-job'+jobid+'.txt','w')
file.write('Hello! This is a message from job %s!¥n' % jobid)
file.close()


でもって,実行するディレクトリに結果を出力するためのディレクトリ
(ここでは "workfolder"としておく)を作成しておく.

以下では,xgrid のコントローラが動いているホストマシンを grigri としています.

1.ジョブをサブミットします.

%xgrid -h grigri.local -job submit -in ./workfolder/ testjob.py ABC

{
jobIdentifier = 10217;
}


2.ジョブのIDを確かめます.

%xgrid -h grigri.local -job list

{
jobList = (
10217
);
}


3.ジョブを実行します

% xgrid -h grigri.local -job results -id 10217 -so ./workfolder/jobstdout.txt -se ./workfolder/jobstderr.txt -out ./workfolder/



4.結果を確かめます

%ls workfolder/

jobstderr.txt jobstdout.txt message-from-jobABC.txt

%cat workfolder/jobstdout.txt

Hello World!
I'm job ABC
hogehoge.machine.org



5.ジョブの実行状況を確認します

%xgrid -h grigri.local -job attributes -id 10217

{
jobAttributes = {
activeCPUPower = 0;
applicationIdentifier = "com.apple.xgrid.cli";
dateNow = 2009-03-12 16:42:36 +0900;
dateStarted = 2009-03-12 15:46:32 +0900;
dateStopped = 2009-03-12 15:46:32 +0900;
dateSubmitted = 2009-03-12 15:46:31 +0900;
jobStatus = Finished;
name = "testjob.py";
percentDone = 100;
taskCount = 1;
undoneTaskCount = 0;
};
}


5.ジョブを削除します

%xgrid -h grigri.local -job delete -id 10217

{
}


6.ジョブが削除されたか確認します

%xgrid -h grigri.local -job list

{
jobList = (
);
}


これでグリッドコンピューティングの仲間入りだよ.
Linux マシンを Xgrid のエージェントとしてリソースを使うようにできるユーティリティもあるそうなので,研究室の様々なマシンをグリッドコンピューティングに
利用できそう.
心配なのは電力の容量ですな.

Twitter