10

画像(jpeg、pngなど)をロードして、その画像のピクセル値をリストまたはマトリックスに割り当てることができる方法またはライブラリはありますか?画像とパターン認識の実験をしたいと思います。

正しい方向に少し微調整していただければ幸いです。

4

5 に答える 5

4

画像の読み込みには、ネイティブのHaskellライブラリであるJuicyPixelsを使用できます。これもREPAに変換するのはかなり簡単です(手動またはJuicyPixesl-repaを使用)。

于 2012-10-15T19:10:04.843 に答える
3

repaライブラリを試してください。また、ここに小さなチュートリアルがあります

于 2012-10-15T18:52:31.143 に答える
3

私は過去にこれにrepa-devilパッケージを使用しました。Developer's Image Library(DevIL)を使用して、さまざまな形式で作業できます。気になる可能性のあるすべての形式を読み書きできます。

実際の画像データはRepa配列として提供されます。これは配列操作に最適なライブラリであり、並列コードの記述を非常に簡単にします。

于 2012-10-15T19:09:25.557 に答える
1

これが新しいHaskell画像処理ライブラリです。これはJuicyPixelsをエンコードに使用し、サポートされているすべての形式を非常に簡単に読み書きし、想像できる方法で操作するためのインターフェイスを提供します。それがいかに簡単かについての簡単な例と同じように:

>>> img <- readImageRGB "image.jpg"
>>> writeImage "image90.png" $ rotate90 img

上記は、RGB色空間でJPG画像を読み取り、時計回りに90度回転して、PNG画像として保存します。

そうそう、Repaも使用できるので、並列処理も無料で受けられます。

于 2016-04-17T08:24:02.857 に答える
0
  1. GTKは、JPEGとPNGの読み込みと保存をサポートしています。[AFAIK、他のフォーマットはありません。]という名前のHaskellバインディングがありますGtk2hsベクターグラフィックスを非常によくサポートしますが、ビットマップグラフィックスはサポートされていますが、理解するのは特に簡単ではありません。そこで私はAC-EasyRaster-GTK、GTKをより使いやすいインターフェースでラップするを書きました。(ただし、まだ必要Gtk2hsです。)唯一の本当のGtk2h欠点は、Windowsでのセットアップが少し面倒なことです。(そして、画像ファイルをロードして保存するためだけにGUIツールキット全体をインストールするのは間違いなくやり過ぎです。)

  2. 「GD」ライブラリはいくつかの画像形式の書き込みをサポートしており、非常に小さくてシンプルです。HackageにはGD用のHaskellバインディングもあると思います。私はこれを個人的に試したことがありません。

  3. PPMと呼ばれるファイル形式があります。これはとてつもなく簡単に実装できるように設計されています(小さなヘッダーとピクセルの配列です)。その結果、Hackageには少なくとも12個のパッケージがあります(私自身を含むAC-PPM)。この形式で画像を表示および/または変換できるプログラムもたくさんあります。

于 2012-10-15T19:07:01.597 に答える