2014年10月14日火曜日

xfsフォーマットのファイル救出

社内で使ってるBuffalo製のNASが逝ってしまわれたのでデータ救出。

VirtualBoxにLinuxを入れてデータ抜こうと画策。

0.Linuxイメージ入手
  →knoppixを利用。http://www.risec.aist.go.jp/project/knoppix/より。
    デーモンツールズでマウント。マウントしたのみでは動かないので注意。

1.VirtualBoxインストール
  →ファイル入手は https://www.virtualbox.org/wiki/Download_Old_Builds_4_3 より。
   いきなりハマった。現在の最新Verである「4.3.16」を利用すると
   「COMコンポーネントオブジェクトの生成に失敗~」と表示され、動作せず。
   割と同じような事例が散見された為、参考にして「4.3.12」を導入して対処。
   USB外付け利用の為に「ExtensionsPack」も導入。

2.VirtualBox設定
  →仮想マシンの作成はGUIの「新規」から一直線。ホストドライブはマウントした仮想ドライブ
    を設定。
    ホストOS-ゲストOSとの共有フォルダ作成の為に「GuestAdditions」を要インストール。
    VirtualBoxの仮想マシン設定から「ストレージ」を選択し、以下のように
    プライマリ、セカンダリIDEを設定。プライマリはknoppix、セカンダリはGuestAddition。
    (GuestAddition.isoはデフォルトでC:\Program Files\Oracle\VirtualBoxに存在)
   


3.GuestAdditionインストール
  →VMを起動して、ファイルシステムを確認すると、「VBoxAddition」が追加されているので、
   そちらを「TerminalEmulator」から起動。(Autorunだと権限足りず、sudoで実行したい為)
   TerminalEmulatorを起動し、「sudo /media/sr1/autorun.sh」を実行。
   (パスは環境で勿論変わります)
   途中で「yes」と入力させられるが、あとはほっとけば勝手に入るのでしばし放置。

4.ファイル移動   
    ホスト側で共有用フォルダを作成(今回はC:\VB)。
    合わせて「デバイス」-共有フォルダーから共有フォルダ設定を実施。


   そちらを「sudo mount -t vboxsf vb /media/shared」にてマウント。
    (sharedはsudo mkdir /media/sharedにて事前作成)
   あとは、ドラッグ&ドロップでコピー開始。


ただし、ファイル移動がかなり遅い。(15Gを一時間程度)
NICの設定かなぁ。

とりあえずそんなとこ。

2014年9月25日木曜日

VS2012で画像処理


樹氷画像を見て綺麗だなーと思ったのがきっかけ。
木の画像を入力して冬景色っぽいのが出てきたら幸せです。





右が入力画像、左が出力。


以下やったこと。


・IDEはVS2012Express for windows desktopを利用。
 →NuGetを用いて画像処理用のライブラリ導入が非常にスムーズに行えた。
・ライブラリはOpenCVSharpを利用。作者様が日本人だし、ラッピングされてる関数が多いのが素敵。
・色空間はHSVのみを利用。30<h<80。最初はRGBとの論理和だったんだけど、なんだかんだこっちの方が分かりやすい。
・動画処理じゃないのでサボってget2Dとset2D利用。
・明るさの補正が必要だったのでVを係数として利用。


以下ハマったこと。

・最初CV.NETを使おうとしたものの、現時点で対応してるOpenCVのライブラリ群が2.4.8で、いくら探してもインストーラが見つからない為断念。(今の公式発表は2.4.9)
・OpenCVSharpの定数利用は、CVConst.~~。ちなみに色変換の定数はColorConversion.~~。
 Cで書いてたOpenCVと大分違って焦った。


以下やろうとしてること。

・精度上昇
 →入力画像が有る程度理想形なので綺麗に変換されてるが、暗めの緑が多いと難しい。
   (HSVの成分で拾えない)
・雪を降らす
 →こな~ゆき~的な。


Android用に最適化して、カメラと連動してみたい所。
沖縄の風景とかを冬景色に出来たら楽しいだろうなー


2014年3月5日水曜日

2014年 個人的ホットな技術

2014年突入してからちょっと経ってるけれども。

個人的に習得したい技術、知識メイン。


・Windows 8.1
 →遊ばなきゃなーと思いつつ放置してた。
  Win8で「見て見て!かっこいいでしょこのUI!これだけつかってりゃ安心だよ!」になって
  Win8.1で「ごめんやり過ぎた 前のUI残すわ」の流れには笑った。
  Winストアアプリ開発も並行して覚えたい部分ではある。
  とりあえずVM動かすところから始めようかな。でもVDAとやらが必要。うーん・・・


・Android Studio(http://developer.android.com/sdk/installing/studio.html)
 →登場自体は去年の夏?だろうか、Eclipseに代わる可能性を秘めたAndroid統合開発環境。
  覚えることは多いけど、コード補完、コード整形など使いこなせたら楽できそうな機能が大量。


・AWS
 →これだけクラウドクラウド叫ばれてるけど「なんとなく」の理解に留まる企業も多い気がする。
  いや自分も多々あるんだけど。
  ストレージ部のみのソリューション、ミドルウェア・OSも含めたソリューション、はたまた
  インフラまでも含めた略。
  とりあえず個人サービス契約した上で使ってみてだろうか。自宅サーバは電気代がね・・・


・IEEE802.11ac
 →次世代無線規格。5Ghz帯なので医療系ソリューションにも使用できる。
  もちろん家でも。ちなみに36-64chは法律違反☆
  理論値でGを超える凄まじい規格。
  今のとこ一般家庭向けルータの価格は大まかに1万前後を推移してる感じかな。


※その他(知っ得系)

・SSD
 →Solid State Drive。もう一部では大分普及しております。OS載ったシステムドライブをこれに
  換装しとくのはもはや前提?

・BitCoin
 →短期で自然消滅するのかなーと思ったけど割と最近ホットになってきましたね。
  国内取引に対する課税の動きとか。
  中国ロシアはブラックマネーで一番使われそうなのに真っ先に国が取引禁止したってのも
  面白い。


書き殴り失敬。
技術のトレンドって追うのは簡単だけど本当の需要と供給を見極めるのは難しいね。
エンジニアの市場価値と探究心は必ずしもリンクしないし。