2016年7月30日土曜日

digiKam パソコン内の画像ファイルを簡単に探せるフリーソフト

digiKam makes it possible to find image files in PC quickly

パソコンに保存された画像ファイルが増えと探すのに手間取ります。
そこで digiKam という寄付歓迎のオープンソース・ソフトウェアをインストールしてみました。
digiKam はパソコンやネットワーク共有ドライブに保存された画像をサムネイル表示・検索・タグ付けなどの管理ができるほか、画像編集機能も備えたソフトです。
Adobe Bridgeに似ています。
Windows、Mac、Linux、FreeBSDに対応しています。
多機能なソフトですがインストールからタグ付けまでの方法をまとめてみました。
blog.fujiu.jp digiKam パソコン内の画像ファイルを簡単に探せるフリーソフト


環境

  • Windows 10
  • digiKam 4.12.0
最近digiKamは5.0にバージョンアップしましたが、4.12とだいたい同じです。
※ Windows版digiKamはKDE SCライブラリー由来のバグがあるので要注意とのことです。


ダウンロード

公式サイトからWindows用インストーラーをダウンロードします。
http://download.kde.org/stable/digikam/
このブログを書いている時点では digiKam-installer-4.12.0-win32.exe が最新版でした。


インストールと初期設定

ダウンロードしたインストーラーを実行します。
インストール後のインストール先フォルダーの容量は 1.33 GB ほどでした。

初回起動はウィザード形式で初期設定する必要があります。

どの項目も後から変更できるのですが、特に大事なのがこの画面。
上のテキストボックスはアルバムに設定するパスで、後から追加できます。
下のテキストボックスはデータベース(SQLite)の保存先のパスです。
このデータベースは設定情報やタグなど、使い勝手を左右する情報が保存されます。
保存先はNTFSフォーマットのドライブかSambaサーバーとされています。
初期値はなぜか ピクチャ フォルダーに設定されているので
C:\Users\ユーザー名\AppData\Roaming\digiKam
というフォルダーを作ってそこを指定しました。

この後もいくつか設定項目がありますが全て初期値のままにしました。


UIを日本語に設定する方法

日本語化の設定メニューは Settings ではなく Help にあります。
メニューの
Help - Switch Appplication Language
を開いて Primary language を Japanese に設定すると、次に digiKam を起動したときに日本語化されます。

※ 以下、英語UIで説明します。


アルバムにフォルダーを追加する方法

メニューの
Settings - Configure digiKam
の Collections (コレクション) からアルバムのフォルダーを追加・削除できます。


サブフォルダーのファイルもサムネイル表示する方法

メニューの
View - Include Album Sub-Tree (表示 - サブアルバムを含む)
をオンにすると
サブフォルダーのファイルもサムネイル表示されます。

これで画像ファイルが探しやすくなりました。

サムネイルに表示された画像ファイルはドラッグ&ドロップ操作でGIMP・Inkscape・CLIP STUDIO PAINTなどの画像編集ソフトにインポートできました。


ファイルにタグ付けする方法

画像ファイルに「誰が映っていか」や「どこで撮影したか」などの情報をタグとして紐付けておくと後で探しやすくなります。
いくつかの操作方法がありますが、個人的に使いやすかった方法を説明します。

ファイルにタグ付けする前に digiKam にタグを登録します。
画面右の Captions/Tags (キャプション/タグ・初期状態ではアイコンだけ表示されている) をクリックして Tagsタブを開きます。

青地の Tags ツリーを右クリックして New Tag をクリックすると Tags ツリーに新しいタグを登録できます。

サムネイルビューから画像を選択して Tagsツリーに追加したタグにチェックを入れて、Apply (適用) ボタンをクリックすればタグ付け完了です。


タグを指定してファイルを探す方法

画面下や画面右の Filters (フィルタ・初期状態ではアイコンだけ表示されている) をクリックして Tags Filter からタグを絞り込んでサムネイル表示できます。
絞込解除は画面下の赤い×ボタン。



関連ブログ

[GIMP] GIFアニメーションの作り方
Live2Dを使ってみました
[Blender] Pythonで複数の設定を一瞬で編集する方法
BlenderのモデルデータをMMDに変換する方法

以上、参考になれば幸いです。

2016年7月23日土曜日

CLIP STUDIO版 クエリちゃん 3Dモデルのファイルを公開しました

Query-chan model for CLIP STUDIO has been published

ポケットクエリーズがUnityアセットとして公開しているキャラクター「クエリちゃん」の3Dモデルを改変しCLIP STUDIOに移植したので ファイルを公開しました。
このファイルをCLIP STUDIOの素材に登録すると「クエリちゃん」をCLIP STUDIO PAINTでイラストやマンガの3Dモデルとして利用できます。
blog.fujiu.jp CLIP STUDIO版クエリちゃんのファイルを公開しました
関連ブログ CLIP STUDIO PAINT を使ってみました
未確認ですがCLIP STUDIO ACTIONでCG動画の作成にも利用できるようです。


なぜ「素材をさがす」に出品しないのか

CLIP STUDIOには素材の出品や購入ができる「素材をさがす」というエコシステムがあります。
このブログを書いている時点で「素材をさがす」はクリエイティブ・コモンズ・ライセンス作品の取扱いに対応していません
「素材をさがす」は出品者への報酬制度があるため今後もクリエイティブ・コモンズ・ライセンスに対応しないと個人的に推測しています。

「クエリちゃん」は誰でもどのような目的でも無償で使えるクリエイティブ・コモンズ・ライセンス (CC-BY) に基づいて配布されるため、ファイルを独自に公開することにしました。


ダウンロード

OneDriveからダウンロードできます。



CLIP STUDIO版クエリちゃんを素材に登録する方法

  1. ファイルをダウンロードし Query-chan.c2fc を展開します。
  2. CLIP STUDIOを起動し、COORDINATEを起動します。
    COORDINATEは無料で利用できます。
  3. CLIP STUDIO COORDINATE の
    ファイル - 開く
    から展開した Query-chan.c2fc を開きます。
  4. CLIP STUDIO COORDINATE の
    ファイル - 素材として登録
    でCLIP STUDIOの素材に登録できます。
  5. CLIP STUDIO PAINT の3Dのキャラクターの中に登録されます。
  6. 素材から削除する場合はCLIP STUDIOの素材のクエリちゃんを選択して削除ボタンをクリックします。


制限

CLIP STUDIOの仕様により次の制限があります。
  1. 標準衣装の腕輪やスカートが透けないことがあります。
    ※ 透けて見えるのが正常です。
  2. 髪や衣装の一部が黒く表示されることがあります。
    ※ CLIP STUDIO COORDINATE では輪郭線を非表示に、カリング設定を「カリングしない」にすると正常に表示されます。


使い方

Windows 10のCLIP STUDIO PAINT PRO 1.5.6で動作確認しました。
CLIP STUDIO PAINTに配置してポーズをつけることができます。そのまま使うことも、デッサン人形として使うこともできます。

顔は2種類、表情は全部で20種類以上あります。

クエリちゃんのUnity3Dアプリを作ったらプロモーション画像をつくるのにもお勧めです。

※ 画像内の文章に意味はありません

衣装は標準のほか、ハロウィン用とクリスマス用があります。季節に合わせた創作に役立ちます。

※ 画像内の文章に意味はありません


開発裏話

CLIP STUDIO用3Dキャラクターの表情を変更できるようにするには、顔の部分のマテリアルを一つにする必要があります。
顔の頂点グループも一つにした方が動作が良好でした。
既存の3Dモデルを流用する場合この仕様はとても厳しいため、CLIP STUDIOのライセンス素材の3Dキャラクターは表情がほとんど変えられません。
「クエリちゃん」はこの仕様を満たすことができたためUnityアセットの全ての表情と衣装を妥協なく移植できました。
その他の部分もMMD化より簡単でした。


ライセンス

"Query-Chan model" は Creative Commons Attribution 4.0 International License(CC-BY) に基づいて配布されています。
詳しくは公式サイトをご覧下さい。
http://query-chan.com/


クエリちゃんのMMDモデルも公開中です

クエリちゃんのMMDモデルで動画を作ったらぜひ動画サイトに投稿してください。キャラミんでも使えます。
[MMD] クエリちゃん・クリスマス版(初版) & クエリちゃんver1.02を公開しました


関連ブログ

CLIP STUDIO PAINT を使ってみました
CLIP STUDIO COORDINATE でプロ生ちゃんを使ってみる
[MMD] クエリちゃん・クリスマス版(初版) & クエリちゃんver1.02を公開しました
[マスコットアプリ文化祭] クエリちゃん大賞受賞の報告

以上、参考になれば幸いです。

2016年7月16日土曜日

CLIP STUDIO PAINT を使ってみました

CLIP STUDIO PAINT makes it possible to draw comics

当ブログの筆者は絵を描く事がないのですが、CLIP STUDIO PAINTを使ってみました。

環境

  • Windows 10
  • CLIP STUDIO PAINT PRO 1.5.6


CLIP STUDIO PAINT とは

CLIP STUDIO PAINT は株式会社セルシスが開発・販売する画像編集ソフトです。特にマンガ作成に秀でています。
価格は廉価版(PRO)のダウンロード版が5000円、全部入り版(EX)が2万円台でWindowsとMacに対応しています。
自分で絵を描く以外にプリセットの3Dキャラクターに表情やポーズをつけて人物を表現することもできます。
また、「素材をさがす」というエコシステムにより自分の作品に使える素材をダウンロードすることも、自分の素材を出品することもできます。


コミPo!との比較

プリセットの3Dキャラクターを使ってマンガを作るソフトといえば別の企業から Windows専用マンガデザインツール・コミPo! が販売されています。
CLIP STUDIO PAINT とコミPo!を比較してみました。

コミPo!の作品では「一つのコマに複数の人物がいて、白い部分がフキダシのみ」の絵柄をよく見かけます。
絵柄の善し悪しはここで議論しないとして、それらしいシーンをコミPo!で作ってみました。
もう少し手を加えたくてもコミPo!には描くための機能がありません。

CLIP STUDIO PAINTで似たようなシーンを再現します。
CLIP STUDIO PAINTでは3Dキャラクターのポーズは関節ごとに指定できます。フキダシや集中線にもたくさんのパラメーターがあり、きめ細かく表現できます。

このシーンに手を加えた結果が下の画像です。
CLIP STUDIO PAINT でセリフをしゃべっている人物にスポットライトを当てるような演出をしました。
フキダシのシッポは自由に曲げることができるので近くのキャラクターにかぶせずに済みます。
わずかな工夫でこのシーンが誰をフィーチャーしているかを読者に伝えることができます。
このシーンはもっと改善が必要ですが、CLIP STUDIO PAINT の豊富な機能のおかげでいろいろな表現ができそうです。
今回はマウスだけで加工しましたが、感圧ペンタブレットを使えばさらに豊かに表現できるようです。

CLIP STUDIO PAINT は沢山の機能を備えているため使いこなすにはマニュアルを熟読する必要がありますが、絵を描かない人にも多彩な画像編集ができるコストパフォーマンスの高いソフトだと思います。


関連ブログ

CLIP STUDIO COORDINATE でプロ生ちゃんを使ってみる
コミPo!で初音ミクのMMDモデルを使う
[Unity3D] 透視投影と平行投影を合成するには[Unity Chan]
[GIMP] GIFアニメーションの作り方

以上、参考になれば幸いです。

2016年7月9日土曜日

Visual Studio Code のターミナルを Cygwin に設定する方法

How to change VScode terminal from cmd.exe to Cygwin Bash

2016年6月、マイクロソフトがオープンソースソフトウェアとして開発・公開しているテキストエディター Visual Studio Code (以下VScodeと略します) のバージョン1.2が公開されました。
このバージョンから「ターミナル」機能が追加されました。
初期設定はVScodeのウィンドウ内でWindowsならコマンドプロンプトが、LinuxやMacならシェルが利用できます。
Windows版VScodeの設定を変更してターミナルからCygwinのBashが使えたのでその方法をまとめました。

blog.fujiu.jp  Visual Studio Code のターミナルをCygwinに設定する方法


環境

  • Windows
  • Visual Studio Code 1.2.0


設定方法

Cygwinは D:\cygwin にインストールされているとします。

VScodeを起動し
ファイル - 基本設定 - ユーザー設定
を開き settings.json に次の1行を追加します。



設定項目が複数ある場合はカンマで区切ります。

blog.fujiu.jp Visual Studio CodeのターミナルをCygwinに設定する方法

これでメニューの
表示 - Toggle Integrated Terminal
をクリックすると画面下半分にCygwinが表示されBashが使えるようになりました。

実際に bashスクリプト のコーディングに使ってみた様子がこちらの画像です。


Cygwinを使うメリット

CygwinはWindows上でPOSIX環境を再現するアプリケーションです。
devカテゴリーを全てインストールと、GCC・Perl・Python・Luaなど広く使われるコンパイラーやプログラミング言語を利用することができます。
ターミナルをCygwinに設定すればVScodeだけでこれらのプログラミング言語をコーディングしデバッグ・実行することがきるようになり、効率化が期待できます。


VScodeのターミナルでCygwinを使うときの注意点

ターミナル操作中にEscキーを押すと、ターミナルのウィンドウが隠れます。
Cygwinでviやvimを起動中にEscキーを押すとターミナルのウィンドウを隠す処理にフックされ、viやvimのモード切替ができませんでした。
VScode利用者がviやvimを使うことはないと思いますが、Escキーの操作がBashに効かない点に注意が必要です。
バージョン 1.3.0で修正されました 2016年7月13日追記

逆に Ctrl+C や Ctrl+V はVScodeにフックされずショートカットキーでのコピー・貼り付けができません

ちなみに、このブログを書いている時点では全角文字(CJK character)がターミナルに正しく表示されません。下の画像は
echo あいうえお
を実行した結果です。
バージョン 1.3.0で修正されました 2016年7月13日追記

そのほか、Cygwinは
  • Unix系の操作を覚える必要がある
    各コマンドやパーミッションなど
  • ファイルのパスの書き方がWindowsと異なる
    例: C:\ は /cygdrive/c/ と書くなど
  • このブログを書いている時点ではCygwinからVScodeの起動ができない
などの特徴があります。


関連ブログ

bashスクリプトの変数のスコープにはまったところと対処方法
Visual Studio Community 2015 をISOファイルからWindows10にインストールする方法
[Android] Xamarin でアプリを作ってみました

以上、参考になれば幸いです。

2016年7月1日金曜日

bashスクリプトの変数のスコープにはまったところと対処方法

The programming pitfalls in variable scope for Bash scripts

bashスクリプトを書いた際、変数が有効なスコープ範囲内にあるはずと思っていたのに値が消えてしまうトラブルにはまってしまいました。
その原因と対処方法をまとめました。


環境

  • Windows 10
  • Cygwin


きっかけは短縮URLの移動先を調べるスクリプト

Twitterのt.coを始め、Google URL Shortenerなど長い文字になりがちなURLを短縮するサービスが広く利用されています。
これらの短縮URLはWebブラウザーなどでクリックすると指定された移動先のURLに移動します。
短縮URLの文字を見ただけでは移動先のサイトは分かりません。
短縮URLの移動先がさらに短縮URLで別の移動先が指定されていることも少なくありません。

そこでCygwinで短縮URLの移動先を再帰的に調べ最後の移動先を表示するbashスクリプトを書いたのですが、変数の値が途中で消えてしまいました。

blog.fujiu.jp bashスクリプトで変数スコープにはまった


curlコマンドをインストールする

curlコマンドが必要です。Cygwin Setupかapt-cygなどでcurlをあらかじめインストールしてください。


失敗したスクリプト

動くはずと思って書いたスクリプトです。


上のスクリプトをファイルに保存しパーミッションを755に設定します。
引数に適当な短縮URLを指定して実行すると、curlコマンドを使って応答ヘッダーを調べます。
移動先が指定されていればそのURLの応答ヘッダーを調べる処理を繰返し、最後の移動先を表示するはずでした。

実際に実行してみると
(1)のstatus変数には間違いなくHTTPステータスが代入されている
(2)のstatus変数は値がカラになっている
という期待を裏切る結果が起きました。


原因

下記サイトを参考にしました。
スマートな紳士のためのシェルスクリプト(8):シェルスクリプト最大の罠、while問題 (1/2)- @IT
http://www.atmarkit.co.jp/ait/articles/1209/14/news147.html
http://www.atmarkit.co.jp/ait/articles/1209/14/news147.html

原因はパイプでつないだ先の変数はパイプ先のみ有効とのことです。
上のスクリプトの場合、パイプでつないだwhile文の内側にある(1)のstatus変数はdoneの直前まで有効ですが、doneより下にある(2)のstatus変数はパイプの外側にあるので別の値を持つ変数だった、ということでした。


解決策

パイプでつないだ先の変数の値を/tmpディレクトリーにファイルとして保存することにしました。


修正したスクリプト

期待通りに動作するように修正したスクリプトがこちらです。


/tmpディレクトリーをRAMディスクに置ければちょっとだけ高速化できそうです。


関連ブログ

[クラウド] BluemixのJavaアプリ開発ではまったところと対処方法
C#のAzure用Webジョブ開発ではまったところ

以上、参考になれば幸いです。