写真のリサイズに Automator を使用

今所持しているノート PC は MacBook Air Late 2010 です。で、デジカメの写真取り込みなどに結構役立っています。この blog の記事に使用している写真もこの2年くらいはこのノート PC で幅1280ピクセルに縮小した写真を使用しています。一気に写真のリサイズするのに Linux や CYGWIN などを使用していた時は Imagemagick の convert コマンドをスクリプトで流して一気にサイズ変更というのをしていましたが、MacOS X には GUI でスクリプトみたいなんが組めます。Windows の PowerShell とはもちろん違いますが、簡単にスクリプト組むという意味では遠からずというやつでしょうか。

名前は Automator というやつでして、画面右半分のペインに記されている手順をやってくれます。この例ですと、

  • ファイルを選択するダイアログボックスを表示。複数のファイルを選択可
  • 選択されたファイルを resized フォルダにコピー
  • そのファイルを 1280 ピクセルに変換する

ということをしてくれます。

ノートPC用アームを買ってきた

バイオリンの練習で、録音したくなっり、曲を耳コピしたくなったりすることがよくあります。とは言ってもバイオリンはミュート付けても相当な音が出ます。なので今レンタルの防音コーナーで練習しているわけです。

んで、今までは iPod とかに入れて適当にやっていたのですが、結構面倒だし、録音ついでに DAW 使えるほうが楽だよねぇ。というころで以前チェストを置いてみたのですが部屋が狭くなって失敗。ということで今回はノートPC用のアームを買ってまいりまして、なんとかならないかと試行錯誤していたのです。

まぁ、ギリギリなんとかなるかなぁというところですが、PCはヒョイと移動出来るので使えそうです。これでレッスンの練習以外にも使用用途の幅が広がればいいなと。ただしエアコン無いタイプなので夏はサウナです。まぁいい

Poraloid GL10 購入

ポラロイドの写真プリンタ GL10 を購入しました。ということで、ポラロイド Pogo と並べてツーショット。

本体は上の写真みたいにポラロイド Pogo 2台分+αの大きさになっています。ただ、やはり気軽にカバンに入れられるのは Pogo ですねぇ。昔のデジカメくらいの大きなので。 GL10 だとカバンの中に居場所作ってあげないと駄目な感じ。

なお、印刷出来る用紙の大きさも上の写真みたいに、Pogo 2枚分の大きさになりましたがシールのように貼れる糊面は廃止されました。

GL10 は Pogo 同様に Bluetooth 接続と PictBridge で印刷可能ですがさらに PC と USB 接続出来ます。ポラロイド社の Web サイトから Mac や Windows のアプリケーションが配布されていまして、これを使用して印刷します。簡単なデコレーションなどは出来るようになりました。

印刷してみた感じは、Pogo よりも良くなってます。がやはり普通に写真印刷設定したPCのプリンタの足元にもおよびません。また、iPhone4 など、iOS な端末は対応してません(PC経由で印刷ですな)

居間に置いてる MacBook Air に HDMI 出力ケーブル付けてテレビにも画面出せるようになった

正月、大阪へ帰ったときに先輩たちとの新年会がありました。待ち合わせ場所が梅田のヨドバシカメラだったので、1年に1回くらいポイントカード使っておこうということで下の写真のケーブルを購入。

物は、ミニディスプレイポートをHDMI出力にしてくれるやつで、お値段 2,870円なり。aavara (www.aavara.com) の AD-mDPMHF と厚紙には記載されています。

んで、接続したところ拡張ディスプレイとしてアッサリ動いて、音声出力も対応してます。まぁ、誰か来たとき用とかには便利かも。私のところのテレビは5年前のハーフな液晶パネルのテレビなので動画サイト見るとかくらいなら十分てなところでしょうか。

巡音ルカさんがやってきた。

なんか、やっと買ったって感じ。

VOCALOID3 も出てるのに、という状況でなんで買ったか。やっぱ前から気になっていたという答えしかありません。ついでにといいますと、最近 iPhone 落して修理(即交換で13,000円とか)を初めママチャリ(これは安い)無くなるとか税務署からの指摘によりまして税金を支払うことにしました(これは高い…)など想定外の出来事が多発している状態のためルカさんの出費はもう誤差の範疇ということで思いきって買ったというわけです。

ちなみに、この写真は VOCALOID のアクティベーション用に使ってる USB-LAN アダプタです。ドングルみたいな使い方されてる LAN インタフェースもかわいそうですが重宝してます。

この週末いくつか部品を仕入れてきました。

さっき、大須へ行って部品買って帰ってきたところです。

先日雷探知キットの写真を載せましたが、デジカメ用のケーブルの先っぽがバナナだったのと、もう一台別のデジカメのケーブルも加工しましょうということで、バナナ端子をちょっと余分に購入と、あとは、雷に使えるかはわかりませんが、マルツでフォトトラとフォトカプラ、タケイ無線でAVRマイコンを仕入れてます。

また雷とは別にパソコン用に売られている外部バッテリ(リチウムタイプ)があります。これを12V安定化すれば天体撮影のときのバッテリーが少し軽くなるのではないかと、可変電源キットも購入しています。これはかなり優先度低いかな?

Highpoint RocketHybird 1220 が届いたのでインストールした。

4月中旬頃でしたか、週アスの記事見て速攻 Amazon でポチしたのが、5月30日に届きました。

物自体は、小さなカードです。これに今回は Intel の 160GB の SSD(SATA2) と WD の 2TB のディスク (SATA2) を付けました。
実際には SATA3 のディスクも手配したかったのですが、今回はあきらめました。
電源を入れて Marvell の BIOS セットアップで CTRL-M で SSD と HDD を使うようにコンフィグしたらOKでした。

で、測定の結果は SATA2 でこれだけいけばいいと思ってます。特に4K ランダム書き込みが 27.97MB/s 出たのは良かったし、シーケンシャルライトも100MB/s出たので良しとしましょう。HDVテープのキャプチャもよほどの割り込みをかけないかぎりは問題なくいけそうです。

これで、外付けRAID0ボックスも外してPCまわりが少し片付くかな?

 

Xilinx WebPack 13.1 の更新

スタートメニューから Xilinx ISE Design Suite 13.1 → アクセサリ → アップデートのチェック

を実行いたしますと、更新対象のプロダクトが表示されます。私の場合はJapanese Documentaion for 13.1 PlanAhead  と 13.1 April 2011 Update is now avaliable の2つが表示されてました。で、まず 13.1 のアップデートをダウンロードします。

何故かWebブラウザが起動されてログインしないことにはダウンロード出来ません。仕方ないのでログインします。そうしたら Xilinx_ISE_DS_Update_13.1_O.40e.2.1.tar のダウンロードが始まりました。

ダウンロードするときのダイアログボックスに Launch when done のチェックボックスがあるのでチェックしときましょう。そうすればダウンロードした .tar の展開まではやってくれます。

あとは。 xsetup.exe を流せばOK

どうでもいいけど、ダウンロードの度にログインする仕組みはやめてくれ

ノリタケ伊勢電子のVFDモジュールに PowerShell からビットマップファイルを表示してみたテスト

function initializeVfd
{
    $a = [byte]0x1b, [byte]0x40
    $serialPort.write($a, 0 ,$a.Length)
}

function clearVfd
{
    $serialPort.write( [char]0x0c )
}

function displayCursorVfd
{
    $a = [byte]0x1f, [byte]0x43, [byte]1
    $serialPort.write($a,0,$a.Length)
}

function moveCursorVfd([int]$x, [int]$y)
{
    $a = [byte]0x1f, [byte]0x24, [byte]5, [byte]0, [byte]1, [byte]0
    $serialPort.write($a,0,$a.Length)

}

function drawBitmapVfd
{
    $a = [byte]0x1f, [byte]0x28, [byte]0x66, [byte]0x11, [byte]128, [byte]0, [byte]8, [byte]0, [byte]1
    $a.Length
    $serialPort.Write($a, 0, $a.Length)
    $serialPort.write($vfdimg, 0, $vfdimg.Length)
}

$serialPort = New-Object System.IO.Ports.SerialPort "COM1", 38400
$serialPort.Open()
initializeVfd
clearVfd
displayCursorVfd
#moveCursorVfd
$img = [System.Drawing.Image]::FromFile("D:\mkusunoki\Documents\i-tron128X64.bmp")
$vfdimg = New-Object byte[] ($img.Width * $img.Height / 8)
for($i = 0; $i -lt $img.Width; $i++)
{
    for($j = 0; $j -lt ($img.Height / 8); $j++)
    {
        $bb = 0
        if($img.GetPixel($i, $j * 8).G -gt 127)
        {
            $bb = 1
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 1).G -gt 127)
        {
            $bb++
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 2).G -gt 127)
        {
            $bb++
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 3).G -gt 127)
        {
            $bb++
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 4).G -gt 127)
        {
            $bb++
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 5).G -gt 127)
        {
            $bb++
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 6).G -gt 127)
        {
            $bb++
        }
        $bb += $bb
        if($img.GetPixel($i, $j * 8 + 7).G -gt 127)
        {
            $bb++
        }
        $vfdimg[$i * ($img.Height / 8) + $j] = $bb
    }
}
drawBitmapVfd
# $serialPort.Write("HHHHH")
$serialPort.Close()
$serialPort.Dispose()

ということで、128×64ドットのディスプレイになんか表示しましょうということです。とりあえず、付属のCDROM に入っていたサンプルに i-tron128X64.bmp というビットマップファイルがあったのでこれを表示させてみることにしました。

今回は Windows の PowerShell というやつを使いまして、ビットマップファイルをロードして、シリアルポートに投げるというものです。まだ試行錯誤中のアプリケーションノートからロジック丸パクしたソースは以下に掲載します。あとは、ビットマップオジェクトをいじれば漢字だろうが何だろうが描画出来るので少しだけ前に進んだかな?