山登り「九重 星生山編」

今回はアッキーとマッキーとで九重へ登山に行ってきました。
すでに3月に入っていたので、雪もなくなっているのではぐらいに思っていたのですが・・

登山口時点での予想以上の寒さアンド強風に「引いたー!」と言っている二人

登山開始早々に持ってきてた服を全部着込んでその上からカッパも着ることになりました。
風が強い時はカッパを着ると体感温度が全然違いますね。

いざ登り始めてみると・・・

楽しいなー!

久住分かれの地点に来ると風がすごいことになってきます。

たまによろけるぐらいの強風

久住分かれの避難小屋で昼食休憩

昼食が終わったら久住山に向かったのですが、進行方向から風が吹いていて雪が顔にパチパチ当たって痛かったので、3分ぐらいで避難小屋に引き返しましたw

そこからは、ちょうど避難小屋にいたベテランの方々と星生山を目指すことにしました。

こっちのルートは風があんまり吹きません

山頂なう現場

これは速い

たまらないバランス

旅人

一瞬だけガスが引いて、辺りに絶景が広がりました

コーヒータイム中。マッキーが持ってきてた湯気でふやかして食べるお菓子。美味しかった

九重は最高でした。コースもまだいろいろあるし、他の季節にも来てみたいものです。

AIR Native Extension(ANE)の速度を試す

今回はANEを試してみました。

ANEとは、AIRからデバイスのネイティブコードと連携できる仕組みのことで、今回のテストではAIRから複雑な計算処理だけをネイティブコードに任せて、AIRを爆速で動かしてみます。

今回のテスト内容は↓この記事をかなり参考にさせていただきました。ありがとうございます。

Air Native Extension(ANE) 実行速度実験2 + 画像処理 » Every day is Carnival

テスト内容は、

(1) 動画を毎フレームごとに
(2) 1200×800px のBitmapDataにdrawして
(3) 緑色以外の部分だけグレースケールに変換する

というものです。

(3) の部分だけをネイティブコードにお任せします。
元の動画はこちらを使いました。

ネイティブコード(C++)で計算してみた動画です。環境はWindows7です。

FPSは 30 出ています。
これ以上BitmapDataのサイズが大きくなると、フレームレートが落ちてくるのですが、2010年に買ったノートPC(Core i7)なので、最新のデスクトップPCだともう少し大きなBitmapDataも処理できるはずです。

C++での画像変換処理のコードはこんな感じです。(参考blog記事に少し手を加えただけです。)

FREObject grayScale(
    FREContext ctx,
    void* funcData,
    uint32_t argc,
    FREObject argv[]
) {

	FREByteArray ba;
	int32_t w, h;

	FREAcquireByteArray(argv[0], &ba);
	FREGetObjectAsInt32(argv[1], &w);
	FREGetObjectAsInt32(argv[2], &h);

	uint32_t *p, *data = (uint32_t*)(ba.bytes);
	int r, g, b;

	p = data;

	for(int y = 0; y < h; ++y) {
	    for(int x = 0; x < w; ++x) {
	        r = *p >> 8 & 0xff;
	        g = *p >> 16 & 0xff;
	        b = *p >> 24 & 0xff;
			if(r>g || b>g){
				r = g = b = (r+g+b)/3;
			}
	        *p = b << 24 | g << 16 | r << 8 | 0xff;
	        p++;
	    }
	}

	FREReleaseByteArray(argv[0]);
	return FREObject();
}

そして、比較用にAS3だけで同じ画像変換処理を行ったものはこちらです。

FPSは 2 しか出ていません。
AS3には暴力的な計算処理みたいです。
AS3での画像変換処理のコードはこんな感じです。

private function grayScale(bmpData:BitmapData):void{
	bmpData.lock();
	var color:uint;
	var r:uint;
	var b:uint;
	var g:uint;
	for(var i:int = 0; i < bmpData.height; i++){
		for(var j:int = 0; j < bmpData.width; j++){
			color = bmpData.getPixel(j, i);
			r = color & 0xFF;
			g = (color>>8) & 0xFF;
			b = (color >> 16) & 0xFF;
			if(r>g || b>g){
				r = g = b = (r+g+b)/3;
			}
			bmpData.setPixel(j,i, (b<<16)|(g<<8)|r);
		}
	}
	bmpData.unlock();
}

ネイティブコードの方がかなり早いことが実感できました!
次は、openFreamworksのライブラリ等とも連携してみたいなー!

3Dプリンタがやってきた~!

3Dプリンタのキットを購入しました。
Lunavast Prusa 3Dプリンターキットっていう商品です。

届いた部品

部品をよく見ると、3Dプリンタで出力されたようなプラスチックのパーツ(左側の黒い物体)も入っています。
後は、ボルトやナットやステッピングモーター等、市販で買えるようなパーツが結構入っています。
ということは、ボルトやナットをうまく組み合わせて、足りないパーツだけ3Dプリンタで出力すれば、また別のオリジナル機械が作れてしまうんじゃないかと夢が広がっていきます。
こりゃ~テンションマックスやー!

これを組み立てていきます。

なんとか完成!

緑色のホースみたいなのがプリントされる樹脂で、これを熱で溶かしながら目的の形を作っていきます。
ではさっそくテストプリント、スイッチオン!

モーターの音「キュイーンキュイーン」
僕「すげー!」

モーターの音「デロデロデロデロ」
僕「たまらーん!」

結果

途中で底面がズレて移動してしまいこんな感じになっちゃいましたが、ズレ対策をとったり、ハードもソフト側の設定も微調整してもう少し精度を上げていきたいと思います。

それにしても自分で組み立てた機械が動くというのは実に気持ちがいいですな!

ナッちゃん - マンガ紹介

最近読んで面白かったマンガです。

鉄工所で働くナッちゃんが、毎回やってくるちょっとややこしい内容の仕事(機械の修理や製作等)を工夫しながら解決していくといった内容の工作マンガです。

機械作りの工程が、大雑把にですが分かってきて面白いです。
このマンガを読むまでは、鉄製品のパーツの大部分は、鉄の塊を削ったり、溶かした鉄を型に流し込んだりして作るのかなーと漠然と思ってたんですが、このマンガを読んでいると板や棒状の鉄を曲げたり削ったり溶接したりネジで固定したりするだけで、かなりの色んな形が出来てしまうんだなーと分かりました。
言われてみれば3Dグラフィックソフトでも、プリミティブな形の組み合わせでいろんな形が作れますしね。

後、主人公のナッちゃんがものすごい楽しそうにものづくりをするので、こっちも仕事等が楽しくなってくるという点でもオススメのマンガです。

階段の照明スイッチ

階段の照明スイッチって、下の階と上の階の両方についていることが一般的だと思いますが、このスイッチの回路が臨機応変な感じで僕は大好きです。
夜中に思い出してドキドキしたりします。

階段の下の階のスイッチが上の図のA、上の階のスイッチがBだとして、照明が点いているときにどちらのスイッチを切り替えても照明は消えて、次にどちらのスイッチを切り替えても照明は点きます。
臨機応変な仕組みですね。

この回路はスイッチが2か所あるとき用のものですが、スイッチが3か所あるときはどうなるんだろうと、ふと思ったので考えてみました。
20分ぐらい考えてみたんですが、3か所すべてのスイッチのどれを押してもオンオフ切り替えれるというところまでなかなか行き着きません。。

ついにギブアップしてインターネットで調べてみると、下の4路スイッチなるものを使えば可能ということが分かりました。

このスイッチだけ見てもまだピンとこなかったのですが、回路を見ると納得!

スイッチBが4路スイッチですね。こいつはすごい!
考えていた時はもっと複雑な回路になるのかなと思っていたのですが、実にシンプルです。ドキドキします。

そしてこの4路スイッチのような、パッと見ただけでは何の役に立つのか分からなさそうな部品も、存在を知っているかどうかでいざというときに出てくるアイデアの差になるんでしょうな~。
と、部品は普段からいろいろチェックしておこうと思ったのでした。

1 2 3 4 5 6 7 8 9 10 11 ... 20

ABOUT

MY APPLI

サッカーピープル
サッカーピープル

操作のしやすさ最優先の
自由自在なサッカーゲームです
iOS版 / Android版

コロッコトロッコ
コロッコトロッコ

石ころのコロッコを転がしながら
サラリーマンを会社へ運ぶゲームです
iPhone版 / Android版

CATEGORIES

ARCHIVES

TAGS

3Dプリント AIR ANE Arduino Away3D client work DIY Flash Funnel JavaScript Kinect LED openFrameworks PhotoShop Progression Qubicle Unity Xcode アプリ インターバル撮影 カメラ キャラ ゲーム制作 コロッコトロッコ スクリーンセーバー デバッグ フットサル ミニマル ランニング レーザーカッター 事務所 低山部 作品 動物 塗装 展示会 文字 料理 福岡てら子 美食家 街ぶらり 道具 鉄道 電子工作

FEEDS

SNS

--

Arduinoをはじめよう
Arduinoをはじめよう

電子工作が未経験の人にも
分かりやすい入門書

Arduinoをはじめようキット
Arduinoをはじめようキット

上の書籍の内容が
一通り試せるツールセット

Prototyping Lab ―「作りながら考える」ためのArduino実践レシピ
Prototyping Lab

「Arduinoをはじめよう」より
深く掘り下げた内容の実践書

Make: Electronics
Make: Electronics

電子工作の基礎から実践まで