パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

Processingでタイムラプスを作ってみる

2012-06-18 | Processing
決まった間隔でaddFrameしていけばできるんじゃないかと作成してみました
実行にはJMyronのライブラリの追加は必要です

Webカメラは少し気まぐれなのでたまに起動できなかったりもします
PS3のwebカメラはまったく起動しませんでした

10秒おきにwebカメラの画像を保存していきます

起動した画面を選択してqボタンを押すと終了して
ソースコードのあるフォルダにout.movを作成します


--------------------------------------------
import processing.video.*;
import JMyron.*;
import java.util.*;

JMyron cam;
MovieMaker mm;

Calendar calender;
long time;
long stime;
long interval=10000;

void setup() {
size(640, 480);

cam = new JMyron();
cam.start(width,height);
int camWidth = cam.getForcedWidth();
int camHeight = cam.getForcedHeight();
cam.stop();
size(camWidth,camHeight);
cam.start(camWidth,camHeight);
cam.findGlobs(0);

mm = new MovieMaker(this,width,height,"out.mov",30,MovieMaker.H263,MovieMaker.HIGH);

calender = Calendar.getInstance();

stime=calender.getTime().getTime();
time=interval;

}

void draw() {

cam.update();
int[] camPixels = cam.image();

loadPixels();

int pos;
for(int y=0 ; y < height ; y++) {
for(int x = 0 ; x < width ; x++) {
pos = y * width + x;
pixels[pos] = camPixels[pos];
}
}
updatePixels();

calender = Calendar.getInstance();


if (time<=calender.getTime().getTime()-stime){
time=time+interval;
mm.addFrame();
}
}

void keyPressed(){
if (key=='q'){
mm.finish();
exit();
}
}
--------------------------------------------
</pre>

プレビューだときちんとリストのるのに
投降後に無駄な改行がはいっている…

--------------------------------------------
Processing1.5の時の話で新しいProcessingではできないロストテクノロジーである

最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。