2014/12/31

matlab 行列の行列の作り方

行列の行列の作り方

行列の行列の作り方

行列の行列、ベクトルの行列を作る 4 つの方法を比較する。
kyewords: matlab, meshgrid, repmat, matrix of matrices, matrix of vectors, comparison

Contents

要素アクセス

clear;
Y = 40;
X = 30;
A = rand(Y, X);
YY = 30;
XX = 40;
tic;
for yy=1:YY
    for xx=1:XX
        for y = 1:Y
            for x = 1:X
                B((yy-1) * Y + y, (xx-1) * X + x) = A(y, x);
            end
        end
    end
end
T1=toc
T1 =

    4.2194

ones

clear;
Y = 40;
X = 30;
A = rand(Y, X);
YY = 30;
XX = 40;
tic;
x=(1:X)';
xx=x(:, ones(1, XX));
y=(1:Y)';
yy=y(:, ones(1, YY));
B=A(yy, xx);
T2=toc
T2 =

    0.0021

repmat

clear;
Y = 40;
X = 30;
A = rand(Y, X);
YY = 30;
XX = 40;
tic;
x=(1:X)';
xx=repmat(x, 1, XX);
y=(1:Y)';
yy=repmat(y, 1, YY);
B=A(yy, xx);
T3=toc
T3 =

    0.0017

meshgrid

ほかと異なり、B は正方行列に限られる。
clear;
Y = 40;
X = 30;
A = rand(Y, X);
YY = 30;
XX = 40;
tic;
x=(1:X)';
y=(1:Y)';
[xx, yy] = meshgrid(x, y);
B=A(yy, xx);
T4=toc
T4 =

    0.0018

2014/02/23

Composition Media System SD カード Apple lossless サポートしない

Volkswagen Composition Media (Golf 7) supports Apple Lossless files (iTunes m4a)  
http://www.youtube.com/watch?v=7I8sRfZRp0s


を見て、iTunes で apple lossless ファイルを SD カードにコピーしてみたが、再生させると、"File Error" が出た。ロシア語はわからないが、youtube をよく見ると m4a ファイルを再生できていることしか確認できない。 m4a なら AAC の可能性もある。AAC をサポートしているのはわかっているので、AAC に直してみたら再生できた。


結論:
Composition Media System SD カードからの再生は、Apple lossless サポートしない

2014/02/18

Golf 7 オーディオ用 SD カード

Golf 7 SDカードを用いて Composition Media System で音楽を聴く
  1. SD (SDXC) card を exFAT 形式でフォーマット.
  2. ラジオ局のロゴを SD カードにコピーしたら、ラジオのマニュアルに従ってカーステレオに設定する。
  3. SD (SDXC) card を再度 exFAT 形式でフォーマット.
  4. SD カードに音楽をコピー
  5. 1つのフォルダが 1000 フォルダ以上含まないように割り振る
  6. Terminal (mac) か Command Prompt (Windows) を起動し、独立したアルバムアートファイルをすべて削除する
  7. アルバムアートをリサイズするツールを用いて、MP3 埋め込みアルバムアートが400pixel x 400 pixel を超えないようにする
  8. ゴミ箱を空にする
  9. Terminal (mac) か Command Prompt (Windows) を起動し、"." で始まるファイルをすべて削除する.
  10. SD カードを取り出す。.
References:
http://www.haydnwilliams.com/blog/vw-golf-mk7-sd-cards-and-album-art


Keywords:  Album Art, Composition Media System, Golf, Golf 7, Golf Mk7, Mk 7, Mk VII, radio station logo, SD Card, Volkswagen, format

2010/09/27

本棚の新しい住人

MacPower 2010 vol.2
* 久しぶりに Mac 雑誌を買った。と思ったら季刊のムックだった。浦島太郎状態。

2010/09/22

本棚の新しい住人

2010年9月22日 8:09
TCP/IP ソケットプログラミング C 言語編
* ソケットを用いたプログラミングに特化したネットワークの教科書
* このテーマの本は案外少ない。
* 私の知りたいことはすべて解決した。参考文献も多い。
* 基本的に UNIX 系.

2007/11/08

Vista 64bit でインストールしたソフト

  • Winmerge 本体は x86 だが shell 拡張は x64 対応している
  • SharpKeys キー入れ替え。KeyCtrl 0.51, keyswap 2.04 は Vista x64 で起動するものの設定が効かなかった。
  • TortoiseSvn x64 用インストーラが公開されている
  • マイシールド 使用可能. shell拡張は x64 対応.

2007/10/21

阿蘇

阿蘇山

2007/08/25

夜叉が池





朝9時に自宅を出発。11時今庄側の登山口。
池も景色も想像よりずっと美しくてよかった。
風通しも景色もいい場所を見つけて、さぁ食事と思ったら
昼ごはんをサックに入れるのを忘れたことに気づいた。
(写真は気づく直前、元気なときにとったもの。)
生きて帰れるのかとちょっと心配になったが、
何とか下山できた。往き90分、帰り45分。14時前に登山口に戻った。

本来の計画ではあと1時間かけて三周山にも登るつもりでいたが、
昼ごはん抜きでは無理だ・・・。
この行程でも、水は500mlでは帰りになくなった。1L 必要だった。
下山時、左足の足首前外側が靴に当たって痛かった。紐の締め方を工夫する必要がある。
登山口ですでに携帯電話の電波は届かない。池直前の山腹で一時3本立ったがメールは送れなかった。
これらの反省を踏まえていつかチャレンジしたい。

その後、今庄365スキー場のやすらぎ温泉につかり、
昼ごはんにコーラとおろしそばを食べて帰った。
翌朝から筋肉痛が出ていることに感激している。



巨身兵の居並ぶ前を通る。

谷の向こうの滝



池到着


本当はまだ先がある

2007/06/10

6/10 新しい自転車を買った。自転車通勤を始めてみた。片道10km, 30分. いろんなものを感じられて楽しい。

2007/05/03

Perl開発を始めるための情報


  1. Perlの参考書

  2. 実行環境の作成 (Active Perlのインストール)

    • Active Perlからdownload
    • 普通にインストールするだけ。

  3. 開発環境

    • 統合環境が好きならEclipse + EPIC(ネット接続必須)。環境を整えるにはそれなりの手間がかかる。
    • シンプルがいいなら秀丸エディタやEmEditor、notepad2 などのエディタを用意するだけ。

  4. 開発手順

    • 統合環境でスクリプトを書いて、行ごとのステップ実行でデバッグ。
    • エディタでスクリプトを書いて、スクリプトを実行。

  5. EXE化

    • ソーススクリプト(Hogehoge.pl)があるだけでは、Active Perlがインストールされた環境でないと実行できない。
    • 単一ファイルで実行できるようにするには、スクリプトをEXE化する必要がある。
    • EXE化には2とおりの方法がある。私は併用している。

      1. PARモジュールを使用する(無料). モジュールについては次項参照
      2. Active State社の「PDK 7.0 Deployment Tools」に含まれるPerlAppを使用する($145)


  6. モジュールのインストール

    • Perlのスクリプティング機能はモジュールによって拡張される。
    • Active Perlに付属のPPM(Perl Package Manager)を使用してモジュールをインストールする。(ネット接続必須)
    • PPMの初回の実行時は時間がかかる。
    • 必要なモジュールを一覧からクリックして選択、インストールボタンをクリックするだけ。
    • 必要なモジュール名は、スクリプトの最初のほうの、use文を見る。
      例:use Digest::MD5 → Digest-MD5モジュールが必要。


  7. ソースコードのバージョン管理+共有

    • 職場ではSubversion + TortoiseSvnを使っています。
    • SubversionおよびTortoiseSvnの情報はGoogleするといくらでも出てきます。
    • 書籍では入門Subversion―Windows/Linux対応
      が好評です。

2007/04/15

レオナルド・ダ・ビンチ -- 天才の実像 @東京国立博物館

受胎告知。

JRC2007の帰りに上野へ足を伸ばした。
東京国立博物館。正面の第1会場は「受胎告知」1点のみの展示で、残りの資料は平成館。
日曜の4時に到着しまず受胎告知を見た。5分ほど待ち、流れるように会場を後にした。
一旦常設展と第2会場を観覧し、5時半ころに再び第1会場に戻るとガラガラ。
落ち着いた気持ちで特別展示室に入室。10人ほどの見ず知らずの「同志」とともに黙々と鑑賞した。
離れたり近づいたりして構図と細部を楽しむことができた。満足であった。

本棚の新しい住人

C言語による画像再構成の基礎 978-4860033705
MRI画像再構成の基礎 978-4860033729

2007/03/11

本棚の新しい住人

プログラミングMicrosoft .NET Framework 第2版 978-4891005238

2007/03/03

Perlでsubsec表示

Time::HiResを使うと時刻をnano sec. の桁まで取得できる。当然micro sec. mili secもOK. 精度があるかは不明。

use strict;
use Time::HiRes;

my $nowObsolete = Time::HiRes::time;
my ($now, $usec) = Time::HiRes::gettimeofday;
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($now);
$year += 1900;
$mon += 1;
my $msec = $usec / 1000; #ミリ秒に変換
my $daystr = sprintf("%04d/%02d/%02d", $year, $mon, $mday);
my $timestr = sprintf("%02d:%02d:%02d", $hour, $min, $sec);
my $msecstr = sprintf("%03d", $msec);
print sprintf("%.6f", $nowObsolete), "\n";
print sprintf("%d.%06d", $now, $usec), "\n";
print $now, "\n";
print $msec, "\n";
print "[", $daystr, " ", $timestr, ".$msecstr] \n";

2007/02/28

本棚の新しい住人

微分幾何 3冊

* 曲線と曲面の微分幾何 小林昭七 裳華房 978-4785310912
* 曲線と曲面—微分幾何的アプローチ 梅原 雅顕 山田 光太郎 裳華房 978-4785315313
* 微分幾何の概念 J.A.ソープ シュプリンガー 978-4431712350

2006/12/04

汚い机と予算の使い道

机の上が汚い。ものであふれている。机上の面積を基準とすると使用率が高いので効果的な使用方法であるといえる。あ、ここにまだ置けるぞ。

年度末恒例の予算を使い切るときの話。

本棚の新しい住人

* プログラミング言語としてのR入門
* NURBS
* 三次元画像処理

2006/11/26

バイクを手放した。

バイクを手放した。

2006/11/19

寒い

暑いのには耐えられるが、寒いのはかなわん。灯油安くならんかな。マフラーほしい。

2006/11/02

本棚の新しい住人

形と動きの数理 杉原厚吉 東京大学出版会 4-13-061307-3