CONTENTS
コメント一覧

Pharmc511 Hello!...
2018-04-03 01:51:48 RE:進捗20100819

Pharmf588 Hello!...
2018-04-01 19:46:25 RE:進捗20100819

Pharmg474 Hello!...
2018-03-31 13:54:02 RE:進捗20100819

Pharme762 Hello!...
2018-03-29 01:42:10 RE:進捗20100819

Pharmg385 Hello!...
2018-03-27 19:42:23 RE:進捗20100819

Pharmf509 Hello!...
2018-03-26 13:26:39 RE:進捗20100819

Johne789 I do believe all of the ideas yo...
2018-03-26 00:52:20 RE:進捗20100819

2018-03-02 文書整理に使いたいのですが、設定を変えても字間が詰められません。...
2018-03-02 08:08:53 RE:AUTLA(あうとら) v2 ベータ版を公開しました

UU ずっとNami2000を使っていたのですがWindows10にし...
2018-01-07 16:14:31 RE:AUTLA(あうとら) v2 ベータ版を公開しました

AT 昔作った文書、HMTL出力はしていたものの、手を加えたいところも...
2017-08-17 10:27:13 RE:AUTLA(あうとら) v2 ベータ版を公開しました

<<一つ新しいエントリー | 一つ過去のエントリー>>
dcrawのコンパイル

dcrawを使ってみる


dcrawはバイナリ(exeなど)やフロントエンド込み(UFRaw)などで配布されていますが、それらは常に最新版とは限りません。というか一年前だったりするので最新製品には対応していません。やはりdcraw.cが更新されたら(もしくはdcraw.cの更新より早く)すぐに使えるようにしたいということで、dcrawをコンパイルしてみました。

ビルド環境の構築(Windows)


おそらくLinuxでは簡単だと思われるので、Windowsでのビルド環境のメモ。

  • MinGW+MSYSをインストール。
  • LCMSのソースをダウンロードし、MSYSでコンパイル。./configure --prefix=mingw & make & make install
  • MinGWのincludeディレクトリにlcms.hがあること確認。

dcrawのコンパイル


  • コマンドプロンプト(MSYSじゃない!)で gcc -DWIN32 -DDJGPP -o dcraw -O4 dcraw.c -lm -llcms -lws2_32
これだけ。本当はこれを自アプリに埋め込みたいんですが、それは後回しにして、とりあえずコマンドで呼び出す仕様にしてみました。

で、やってみた。




現状では、「開く」ダイアログでPEFファイルを選んで、それを画面上に等倍表示するだけのアプリです。一応内容が表示されてますね。前回のエントリーで書いたTODOの2番までいった感じです。

ただ、3番に行く前に、大きな問題が…。

課題


これ、表示するまでに10秒近くかかるんです。dcrawの処理そのものが遅いのか、別プロセスのdcraw.exeに渡してるので単純にオーバーヘッドがかかっているのか。dcrawがテンポラリファイルを作った後さらに目的地までコピーしているような気がするので、それをやめさせてこちらからテンポラリファイルを直読みしに行くようにすればちょっとは早いかもしれません。そもそも一旦ファイル化するのはあまりメリットはないのでメモリ上でやるのがベスト。それにはdcrawをライブラリ化しなければなりません。とにかくdcraw.cをもっと読んでみることにします。

それから、現像後のデータはdcrawからは48Bitで出してるんですが、表示時には24Bitで表示しています。パソコンの色自体が24Bitなのでそれはそれで良いんですが、この時にどう間引くべきなのか。現状ではQtのaddPixmapで24Bit化しているつもりなんですが、もしかするとOpenCVのcvLoadImageの時点ですでに24Bit化されちゃってる恐れもあって、この辺はまだ調べる必要があります。いずれにしても現状では暗く表示されてしまって問題なので、描画のロジックは見直す必要があります。
0コメント
| 1 |
お名前:
コメント:
上の画像に書かれている5文字を入力してください:
削除用パスワード: