mieki256's diary



2007/02/27(火) [n年前の日記]

#5 [cg_tools][prog] 昔作った画像合成用のスクリプトが上手く動かなくなっていた。

_m256 Perlmagick Composite Utility ってのを大昔に作ったのだけど、動かしてみたらプレビュー画像表示の際にエラーが。
Tk::Error: PPM image file "C:\hoge\fuge\hage/____m256pmcu_tmp2.ppm" has bad maximum intensity value 65535 at C:/usr/local/Perl/lib/Tk/Image.pm line 21.
 Tk callback for image
 Tk::Image::new at C:/usr/local/Perl/lib/Tk/Image.pm line 21
 Tk::Image::__ANON__ at C:/usr/local/Perl/lib/Tk/Image.pm line 63
 main::PreviewImageWindowToCanvas at C:\hoge\fuge\hage\m256pmcu.pl line 367
 main::CompositePreview at C:\hoge\fuge\hage\m256pmcu.pl line 662
 Tk callback for .frame1.frame2.button
 Tk::__ANON__ at C:/usr/local/Perl/lib/Tk.pm line 252
 Tk::Button::butUp at C:/usr/local/Perl/lib/Tk/Button.pm line 111
 <ButtonRelease-1>
 (command bound to event)
合成結果プレビュー用 ppm ファイルの先頭のあたりをバイナリエディタで覗くと、「65535」なる値が ASCII で入ってる。なんだこりゃ。何にせよ、このスクリプトは、Active Perl 5.8.8 build 819 では問題があるみたいだな…。連番画像の合成処理自体は一応できるみたいなんだけど。

表示用の作業ファイルの拡張子を、ppm から xpm にすると、プレビュー画像が出ることは出るけど。処理が遅い。異様に遅い。

ppm への変換時に depth を指定したら動いてくれるようになった。 :

    $img[$kind]->Set(magick=>$ext);
    $img[$kind]->Set(depth=>'8');
みたいな。色深度を指定しないとゴイスなカラーモードで出力してしまう、のかもしれん。判らんけど。

とりあえず、一応修正してアップロードしておいた。 0.02 → 0.03 に修正。

Perl/Tk で扱える画像フォーマットって、本当に ppm/pgm/xpm/gif しかないのだろうか。 :

未だに他のフォーマットは扱えないのかしら…。せめて png とか使えんかな…。

そもそも、わざわざ Perl/Tk でやらなくたって、ImageMagick にファイル名を順々に渡していくスクリプトを作るだけでいいような気もする。まあ、当時は勉強も兼ねてやってたんだろうけど。>自分。

今は blender あたりで合成できるんじゃないのかな。オープンソース文化圏から、色々な動画編集ツールも出てきてるようでもあるし。GIMP + GAP でも出来たりするのかもしれん。メニュー等が英語だからさっぱり判らんけど。

以上です。

過去ログ表示

Prev - 2007/02 - Next
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project