趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。
RSS icon
  • 金環日食の動画をアップします

    投稿日 2012年 5月 23日 コメントはありません

    知り合いへのお披露目も終わったので、金環日食の動画をアップします。

    自宅近くの川の堤防からこんな世紀のイベントを見ることができて、本当に良かったです。唯一の心残りは、影の形が太陽のかけた形になるのをすっかり忘れていて、見ることができなかったことです。堤防上なので影を作るものが一切なかったんですよね~~。


  • 金環日食の観察

    投稿日 2012年 5月 22日 コメントはありません

    今日は会社をサボって、金環日食の観測をしました。

    非常に心配な天気でしたが、なんとか薄い(薄くない?)雲を通して金環日食を観察できました。また、写真の方も何とか撮影できました。試し撮りの際はTAMRON AF18-270mm F/3.5-6.3 DiII VC(Model B003)を使ったのですが15倍ズームよりも、ボディを買ったときについてきたダブルズームキットの望遠側のEF-S55-250mm F4-5.6 ISの方が5倍弱のズーム比に抑えられていていいんじゃないかということで、本番はこちらで撮影しました。もっとも、あいにくのコンディションで結局どちらがよかったのかはよくわかりません。

    それでもこんな写真が撮れました。

    ISO100、F8、0.5秒、焦点距離250mm、撮影時刻7時35分29秒
    ホワイトバランス太陽光、ND100000フィルタ使用

    もう、雲が厚くてコンディションがめまぐるしく変わるので大変でした。本当はISO200の方が良かったのかもしれませんが、ISO100/F8固定でシャッタースピードで必死に露出を合わせていました。
    EOS Utilityのインターバル撮影の機能を使っていたのですが、インターバル撮影中はシャッタースピードを変えることができず、一旦解除しては再度インターバル撮影起動・・・なんてことをくりかえしていました。こんなことならインターバル撮影タイマーを作っておくんだった・・・とちょっと後悔です。(作るの自体は簡単なんですけど、User Interfaceまで作り込むのと、ケースの加工が面倒くさいんです)

    さらに、インターバル撮影したものをIrfanViewで一括縮小した後、AvidemuxでMotionJPEGのAVIに変換し、 HandBrakeでMpeg4に変換してみました。AvidemuxでMotionJPEGを作成するのは簡単で、対象とする連番のファイルを一つのフォルダに入れて、ファイルを開くダイアログで「画像」を選択して、先頭のJPEGファイルを指定します。これで再生ボタンを押すだけで動画として再生されます。なお、フレームレートは「映像」メニューの中に設定箇所があります。動画を確認したら、「ファイル」→「保存」→「映像を保存」でAVI形式を選択して保存すると、AVIファイルができあがります。
    これをHandBrakeでMpeg4に変換してみたものを置いておきます。(再生にはvideoタグをサポートしたブラウザが必要です)

    金環食の部分はいずれ公開するとして、今回は金環日食終了後の部分をお送りします。
    途中でシャッタースピードを調整したりしているところでカクカクしたりしますが、どれだけ雲と格闘していたか、雰囲気はわかっていただけるのではないでしょうか??


  • minicomの使い方

    投稿日 2012年 5月 20日 コメントはありません

    ひょんなことからとあるマイコンの評価ボードを入手しました。

    その評価ボードにはシリアルポートがついているのですが、そこにLinuxでつなぎたい、ということでminicomの使い方を調べてみました。

    インストールは簡単で、

    $ sudo apt-get install minicom

    でおしまいです。

    起動は、

    $ minicom -s

    でセットアップ画面に入れるのですが、日本語表示だと桁数の関係で画面がかなり悲しいことになります。それでも、3番目の「シリアルポート」を選択して、「A」のシリアルデバイスを「/dev/ttyUSB0」などに設定します。「E」の速度やパリティなどの通信パラメータは初期値で115200 8N1になっています。また、ハードウェアフロー制御がデフォルトでONになっているので、デバイスだけ設定すればOKでした。

    そのままEnterやESCで適当に(^^;抜けると、モデムの初期化を試みるようです。minicomは大昔のパソコン通信の時代のものなので、モデム制御が入ってしまう(そしてモデムの応答をまつ)のが鬱陶しいところです。

    で、何とかならないかとと思って、manページを読んでみました。

    コマンドラインオプション

    • 「-s」でセットアップ画面。システムの初期設定値は /etc/minicom/minirc.dfl に記述されている。-s オプションをつけるとイニシャライズせずに直接設定メニューを表示するようです。
    • 「-o」でモデムの初期化をせずに起動します。今回はシリアルコンソールとして使うので、このオプションをつける方がいいですね。ちなみに「C-a z q」でモデムの初期化無しに終了します。
    • 「-b」で通信速度を指定します。
    • 「-D」でデバイスを指定します。今回の場合は「-D /dev/ttyUSB0」という感じですね。
    • 「-7」「-8」でビット長を指定します。

    システムの初期設定値は /dev/minicom/minirc.dfl に記述されている、ということですが、初期設定ではファイルは存在しません。「$ sudo minicom -s」でメニューを起動して、デバイスや通信速度等を設定し、dfl に保存する操作をすると /dev/minicom/minirc.dfl が生成されましたので、そういう使い方が良さそうです。

    使い方で必ず必要なこととしては、終了の「C-a z q」だけで良さそうな気がします。


  • 金環日食の観察準備

    投稿日 2012年 5月 19日 コメントはありません

    明後日21日は金環日食です。今回の日食があるのを知ったのは、もう3年か4年くらい前でしょうか。当時は「だいぶ先だなぁ」と思っていたのですが、もう明後日になってしまいました。

    次回、日本列島本土で皆既日食または金環日食が見られるのは

    • 2035年9月2日の皆既日食
    • 2041年10月25日の金環日食
    • 2063年8月24日の皆既日食
    • 2095年11月27日の金環日食

    ですから、2035年と2041年はなんとか、2063年はまず見られないでしょうね。それもどこにも行かなくても(=近所で)見られるのはそれこそ今回が最初で最後でしょう。

    そこで今回はせっかくなので写真を撮ってみよう、ということで半年ほど前にデジカメ用のND100000のフィルタをamazon.co.jpで購入しました。で、当日いきなり使ってうまくいかないと困るので、今日の午後、自宅ベランダからテストしてみました。

    使用しているカメラはEOS KissX2で、レンズはいわゆる便利ズームのTAMRON AF18-270mm F/3.5-6.3 DiII VC(Model B003)です。

    で、テストしてみてわかったことですが、いくらフィルタをつけていたとしてもファインダーを覗くのは厳禁・・・とのことですので、ライブビューで撮影範囲を確認するのですが、ライブビューでは先にある太陽がまぶしくてまったく見えません。・・・となると、カメラ本体以外で撮影範囲を確認するしかありません。そこで、急きょNetBook PCを持ち出してきてEOS Utilityをインストール(&アップデート)し、リモートライブビューでようやく撮影範囲を確認できました。

    それで撮れた写真がこれです。(RAWで撮影したものをトリミングしてJPEG圧縮しています)

    ISO200、F11、1/640秒、焦点距離270mm、撮影時刻 14:30
    ホワイトバランスは太陽光、ND100000フィルタ使用

    ISO200、F8、1/250秒、焦点距離270mm、撮影時刻 16:34
    ホワイトバランスは太陽光、ND100000フィルタ使用

    前者の撮影時はほぼ快晴で、撮った写真をみると黒点が写っていたので嬉しくなりました。(最初はどこか汚れがあるのかと思ってしまいました・・・)

    後者はわずかに薄曇りになってしまっていて、周りが真っ暗ではなくなっています。また、便利ズームのせいか、色収差のようなものが見えます。(左上の輪郭は青っぽく、右下の輪郭は赤っぽい)

    その他、撮影にあたって気付いたことをメモしておきます。自己流です。もっといい方法があるかもしれません。

    • 撮影モードはマニュアル。撮影時はAFはOFFにする。また手ぶれ補正(VC)もOFFにする。
    • 最初にリモートライブビューで被写体をとらえるとともに、拡大して黒点や太陽のエッジを使ってマニュアルフォーカスでピント合わせをする。自分のレンズの場合はレンズの∞マークと一致していました。
    • さらにリモートライブビューでヒストグラムを見ながらレンズの絞りとシャッタースピードを設定します。
    • APS-Cで270mmでもそれほど大きくは写らない。撮影範囲の高さの6分の1くらい。その代わり、一度セットすると日周運動で端に寄って行ってしまうまで10分くらいはある。つまり、早い段階から撮影を始めて、動き具合を把握しておけば、金環日食中は触らないでOKの可能性が高い。
    • 既出の通りライブビューの画面は見えないのでノートPCに入ったEOS Utilityが必須。インターバルタイマーの機能もあるので、セットしておけば自分は日食グラスで直接観測可能。
    • ノートPCの画面も周りが明るいと見えにくいので、周りを遮るものが必要
      (画面が光沢なのがだめだめ・・・)

    (自分の場合に)撮影に必要な機材を整理しておきます。

    • カメラ本体(EOS KissX2)
    • ズームレンズ(AF18-270mm F/3.5-6.3)
    • ND100000フィルタ(77mm)とステップアップリング(72mm→77mm)
    • 三脚
    • ノートPC(EOS Utilityインストール済み)
    • MiniUSBケーブル(ノートPC-カメラ接続用)
    • マウス
    • キャンプ用テーブル&椅子
    • 折りたたみBOX(機材運搬用とノートPCを影に入れて画面を見やすくするため)2個
    • 黒い布(ノートPCの画面を見やすくするため)
    • カメラ用予備バッテリ、予備メディア

    あとは普通の観察機材としてはこんなものでしょうか。

    • 日食グラス
    • 飲み物(暑いかもしれないので・・・もっとも、すぐそばに自動販売機がある場所で観察予定ですが)
    • 普通のデジカメ(暗くなった風景を撮ってみたい)

    あとは天気が少しでも良いことを祈るばかりです・・。


  • rsyncでディレクトリの同期

    投稿日 2012年 5月 12日 コメントはありません

    GWの終わりには竜巻で大きな被害が出るなど、最近は天気が荒れがちでよく雷がなったりしています。また、東日本大震災の影響の電力不足が続いていて、この夏はいつ停電になってもおかしくない気がします。停電すると常時稼働している機器が影響を受けます(当たり前ですが)。

    停電対策といえばまずはUPSですが、導入するお金も置く場所もありません。そうなると、電源OFFするしかないのですが、嫁さんが先に帰ってきてPCで遊ぶ際に写真が見れないとかという話になってしまいます。それも困るので、MicroServer+FreeNASの導入で遊休状態になっている玄箱PRO上のSamba上に最低限のファイルをコピーして稼働させることを考えました。
    が、コピーを手作業でやっていると面倒なので、rsyncで自動化できないか調べてみました。

    実施にあたってはこちらのサイトDebianの公式サイトの記述を参考にさせていただきました。

    1.考え方

    玄箱PRO側でrsyncdをdaemonモードで起動して待機させます。sshモードの方が試してみる分には簡単なようですがパスワード入力が要る(自動化するには鍵ペアで認証になる?)のと速度が遅いので、daemonモードで実施します。daemonモードは暗号化がかかりませんが、自宅内ネットワークなのでよしとします。
    そこに、FreeNAS側からrsyncで書込みをさせます。

    2.玄箱側の設定

    rsyncのインストールは初めからしてあったのか、したのか忘れました(^^;。
    ただ、設定ファイルである /etc/rsyncd.conf は存在していなかったので作成します。

    ### グローバル・オプション
    uid = root
    gid = root
    max connections = 1
    log file = /var/log/rsyncd.log
    pid file = /var/run/rsyncd.pid
    ### モジュール・オプション
    [common]
     comment = rsyncd server
     path = /home/common
     read only = no

    コピー(同期)はFreeNAS側の common というディレクトリを /home/common に同期させます。また、玄箱は非力なので、コネクションをたくさん張られてもかえって遅くなるだけなので接続数を制限します。
    設定ファイルを作成したら、

    $ sudo rsync --daemon --config=/etc/rsyncd.conf

    で daemonモードで起動します。

    3.FreeNAS側の設定

    FreeNAS側は「システム」→「Rsync Tasks」→「Add Rsync Task」でタスクを作成します。

    • 「パス」にはローカル側のディレクトリを指定します。Browseでは共有単位でしか選択できないようなのですが、今回はFreeNAS側の common の下をすべて同期するわけではないので、対象ディレクトリをフルパスで指定します。
    • 「リモートホスト」には玄箱PROのIPアドレスを指定します。
    • 「Rsync mode」には「Rsync module」を指定します。
    • 「Remote Module Name」には /etc/rsyncd.conf のモジュールオプションの[]の中身、すなわち「common」を指定します。
    • 「Remote Path」には「パス」で指定した部分のうち、common以下の部分だけ指定します。
    • 「Direction」はFreeNASから玄箱PROなので、「Push」を選択します。
    • 「Minute」以下はどの周期で同期を試みるか設定します。
    • 「ユーザ」は「root」を選択します。
    • あとはデフォルトのままにしたような・・

    これで「OK」を押すと設定した時間で同期動作が始まりました。

    4.自動起動の設定

    rsyncをinetdから起動させるための設定をします。
    まず/etc/servicesファイルに 次のような rsync サービスがあることを確認します。

    rsync           873/tcp

    デーモンを inetd から起動させるために、次の行を /etc/inetd.conf に書き足します。

    rsync      stream      tcp         nowait      root /usr/bin/rsync rsyncd --daemon

    修正後に inetd に HUP シグナルを送り、 修正された設定ファイルを読み込ませます。

    5.他に参考になりそうなもの

    rsync + cron + sshのみで実現する方法(rsyncd を使わない方法)


  • 動画の色調整

    投稿日 2012年 5月 7日 4個のコメント

    水中動画の方も色調整したいので方法を調べています。インストール対象はいつもの通り(?)、LinuxMint11の64bit版です。

    1.avidemuxのインストール

    (1)事前準備

    こちらの記述を参考にして環境を整えます。

    $ sudo apt-get install libxml2-dev gcc g++ make cmake pkg-config libpng12-dev fakeroot yasm
    $ sudo apt-get install libgtk-3-dev
    $ sudo apt-get install libqt4-dev
    $ sudo apt-get install libaften-dev libmp3lame-dev libx264-dev libfaad-dev libfaac-dev

    (2)ダウンロード

    sourceforgeからファイルを入手します。今回の場合、avidemux_2.5.6.tar.gz です。

    (3)環境構築

    再びこちらの記述を参考にして環境構築します。

    $ bash bootStrap.sh --deb

    rootのパスワードを聞かれて、入力すると環境構築が始まります。

    ・・・・・で、うまくいかないとか思ってたら、avidemuxはapt-getでインストール可能でした。
    (つまりここまでの苦労は意味がなかった・・・・) 

     

    2.使ってみる

    まずファイルを開きます。

    その次に「映像」の項目で、「M-JPEG」を選択します。いきなりMP4などでもいいのですが、エンコードは別のHandBrakeなどにまかせるとして、ここでは色調整を手早くすませるためにM-JPEGまでにします。
    さらに、映像のフィルタで「色」のところの「Avisynth ColorYUV」で「自動白色調整」をチェックします。
    次に、音声の項目で「MP3(lame)」を選択しますが、これはよくわかりません。
    形式は「AVI」にしました。

    その上で、「保存」で映像を保存します。

     3.効果

    まず補正前の映像です。→補正前SAMPLE
    次に補正後の映像です。→補正後SAMPLE
    (ファイルを保存して開いてみてください。H.264で圧縮し直しているので再生環境が必要です。)

    全体が真っ青で青い魚がいるのがわかりにくかったのが容易に見えるようになっています。


  • Linuxでの画像一括補正

    投稿日 2012年 5月 6日 コメントはありません

    ゴールデンウィークはシュノーケリングをするために海へ行ってきました。水中の様子は非常に美しいので、最近は水中用のデジカメを持参しています。
    ただ、人間の目や脳は記憶色やまわりの色の状況に合わせて勝手に色を補正するのですが、デジカメはそんなことはお構いなしにカメラに内蔵されて範囲のホワイトバランスで撮影してしまいますので、大抵の場合は以下のように写真全体が青く写ってしまいます。(今回はあまり天気が良くなかったせいもあり、なおさら青っぽく、さらに空気を巻き込んでいるせいか、ちょっと濁ったような感じになっています)

    写真数枚レベルであれば手作業でカラーバランス補正をすればいいのですが、枚数が多いと大変ですので、どうにか手抜きできないか調べてみたところ、Linuxでも動作するXnConverterというソフトウェアを使ってみました。

    展開したファイルのxnconverter.shを走らせるとソフトウェアが起動します。(XnConverter.desktopの中身のファイルパスの記述を修正した上で、適切なフォルダに置くことで、ランチャからも起動できるようです)

    起動すると、Input、Actions、Outputなどのタブがあるので、Inputで処理対象ファイル(またはフォルダ)を指定します。Actionsのタブで「+」を押して、処理の内容を設定します。今回は「Automatic levels」だけを設定しました。プレビュー画面も表示されるので、どんな風に変換されるか確認しながら設定できます。Outputのタブでは出力先のフォルダや、出力ファイル名を設定します。今回は出力ファイル名に「e_{FileName}」と設定して、元のファイル名の頭に特定の文字をつけることにしました。

    これらを設定して、「Convert」を押すと一括して変換をしてくれます。もともとそれなりの色になっているファイルではたまに逆に色がおかしくなることがありますが、とにかく一括して処理してくれるので楽ちんです。

    変換してやるとこんな感じになります。

    まとめて処理することができることを考えると満足のいく仕上がりです。

    <補足>
    同じ会社のXnViewMPというソフトウェアでも「ツール」→「一括変換」でほぼ同じソフトウェア(しかも日本語で使える!)が動作するようです。XnConverterがXnViewMPの一部の機能を切り出したものなのかもしれません。