2009-08-24 6 views
1

私はいくつかの画像ファイルの作業をしようとしています。特に、ある画像ファイルフォーマットを別のものに変換しようとしています。誰かがどのようにこれを達成するかもしれないかの例/ガイドを知っていますか?これは一般にどのような種類のプログラミング言語ですか?人々が画像ファイルをどのようにプログラミングするのですか?

編集:はどうやら私は、私もあなたを伝えるために重要な情報を知らないこれについてこれほど少ないのを知っている:)

だから私はC++やJava、Pythonの、およびWebデザインでのみ有用です言語(HTML、CSS、Javascript/JQuery)。

具体的には、5次元(X、Y、Z、時間、チャンネル)の画像ファイルを持っていて、チャネル1xをインクリメントするアルゴリズムに従って、5d行列の各座標のピクセル値を1チャンクに並べますそれから、同じY、Z、時間、次にすべてのX、次のYのすべてのX、同じZ、時間などです。私がしたいことは、各ピクセルの生データを並べ替えて、それが.tiff形式になるようにすることですこれはIFDによって定義され、各IFDはX、Yデータに対応し、Z 時間チャネルIFDが存在する。

基本的に、画像の各ピクセルで見つかったバイナリ値を並べ替えるだけです。たとえば、各ピクセル座標(X、Y、Z、時間、チャネル)で定義されたグレースケールの場合、0-255の数値を持つイメージもあります。そのシナリオでは、私はちょうど座標の16進値をつかんで、上の.tif指定に従って正しい順序で入れたいと思う。

また、これは現在WindowsとMacで動作します。 Pythonでそれを行うことは可能でしょうか?

+0

アプリケーションはどのような環境で動作しますか?デスクトップ?どのオペレーティングシステムを実行するのですか?画像を操作したり変換したりすることができるプログラミング言語はたくさんあります.PHPは心に浮かぶものですが、言語の選択は、あなたが望むものよりもどこで機能するかによって異なります。 – Waggers

+0

あなたはどの言語に堪能ですか?どんな種類の画像ファイルを変換しますか?最も一般的な言語には、これを処理するライブラリが必要です。 – nfm

+0

私はまだあなたがしたいことを理解していません。 「ピクセル強度データが来る順序を並べ替える」とはどういう意味ですか? –

答えて

3

あなたはカスタムファイルフォーマットを扱っているので、メモリ構造にバイトレベルのアクセスを許可する任意の言語でこれを行うことができます。 C++、Java、Pythonに精通しているので、C++、Java、Pythonの使用をお勧めします。

+0

@musicGenesis:素晴らしい、ありがとう。あなたはこれに任意のガイドを提案することができますか、私は自分自身を調べる必要があるゴールデングーグルの検索条件ですか? "Pythonバイトレベルアクセス"にはあまり運がありませんでした。( – sepiroth

+1

@hatorade(hater + gatorade?):私は自分自身でC#の人で、Pythonについてはzipを知っていますが、基本的には、ファイルをIO(Pythonであれどんなものでも)で開き、バイト配列に読み込んだ後に操作してからファイルに保存します。元のファイル形式と出力の両方を知る必要がありますあなたが達成したいと思うフォーマット(TIFF)。 – MusiGenesis

3

GraphicsMagicまたはImageMagickのツールとバインディングを使用しています。

+1

@lutz:これらのいずれかを使用してカスタムイメージファイル形式を別の形式に変換できますか?私はカスタムイメージファイルの変換に基づいてカスタムコードを書く方法を提供していますか? – sepiroth

0

ファイルタイプを変更するだけであれば、ImageMagickはうまくいくでしょう。 Pythonを使用すると、簡単なGUIでImageMagickの呼び出しを簡単に折り返すことができます。また、後でやりたい場合はPython Imaging Libraryにフォールバックするオプションで完全なプログラミング言語を提供します。

関連する問題