画像データの形式 (演習1)

作業ディレクトリの作成

  • ログインしたら「ターミナル」を立ち上げる
    $ cd
    $ mkdir image
    
    $ cd image
    $ mkdir e1
    $ cd e1
  • 画像処理論用に image, 今回の演習用に e1 ディレクトリを作成する

PBM 作成テスト

$ touch e101.pbm
  • Finder で ~/image/e1 を開いて、e101.pbm を テキストエディットに Drag&Drop
    • あるいはコマンドラインから open -a TextEdit e101.pbm と入力
    P1
    5 5
    0 1 0 1 0
    1 0 1 0 1
    0 1 0 1 0
    1 0 1 0 1
    0 1 0 1 0
  • 以上を書き込み、保存。(最後の行末で改行しておくこと)
  • cat e101.pbm で確認

gimp による画像表示

  • ASCII PxM ファイルは他のイメージブラウザで表示できないので、gimp を使う
  • こんな感じのアイコンがドックに入っている(と、思う)ので、クリックして起動
  • Gimp の ファイルメニューで ~/image/e1/e101.pbm を開く
    • ディレクトリを指定して Open をクリックしないと開いていかない(ダブルクリックが効かない)みたい
  • 5x5 の画像は小さいので 表示 -> ズーム で大きくして見る

形式変換

$ ppmtogif e101.pbm > e101.gif
  • Finder にできた e101.gif をダブルクリックすると プレビュー で表示される

プログラムを使った画像作成

  • 次のプログラムを作成して実行する
    #!/usr/bin/env python
    # e102.py ... make RG plane of color cube
    f = open('e102.ppm', 'w')
    print >> f, 'P3'
    
    print >> f, '256 256'
    print >> f, '255'
    for y in range(256):
        for x in range(256):
            print >> f, x, y, 0
    f.close()

プログラムの作成と実行

$ touch e102.py
$ open -a TextEdit e102.py   # プログラム作成
$ python e102.py
  • できた画像(e102.ppm)を gimp で確認
  • pnmtojpeg e102.ppm > e102.jpg で JPEG 形式に変換し、プレビューで確認

自然画像のファイルサイズ

  • 高知大学気象情報頁 -> 保存書庫 -> 日本付近の画像 から、自分の誕生日(2008 or 2009) の画像をひとつ選んで保存する。(Firefox のファイルメニューから)
  • jpegtopnm ファイル名.jpg > e103.ppm で PPM に変換
  • pnmtopng e103.ppm > e103.png で PNG 画像に変換(可逆圧縮)
  • ls -l で JPEG, PPM, PNG のファイルサイズを確認

課題1

  • x101.pgm というファイルに 16x16 の ASCII PGM 画像を作成する。ただし、グレースケールのレベルは 0,1,2,3 の 4階調とする。画像はどんなものでもよいが、道路標識、禁煙サイン、顔マークなどアイコン的なものとする。
  • x101.pgm を GIF形式に変換して x101.gif を作成する

課題2

  • x101.pgm を次のコマンドで 10倍に拡大する
  • pnmscale 10 x101.pgm > x102.pgm
  • x102.pgm を、JPEG 形式 (x102.jpg) と PNG 形式 (x102.png) に変換し、そのサイズを比較する
  • プレビューでそれぞれを拡大して見た時、何か違いがあるだろうか?

課題3(発展課題)

  • 時間があれば挑戦
  • 以下のような画像を作成するプログラムを作りなさい。
  • 300x300 pixel のサイズの画像内に太い線で円を描く
  • 円の内側の直径は 200 pixel程度、外側の直径は 250pixel程度とする

本日の出席確認

  • 菊地の画像処理論用アドレス へメール送信。 本文に学生コード・氏名を記入。課題1の結果(x101.gif) を添付。課題2の結果・考察を書く。 さらに感想・質問等を書いてもよい。
  • 練習および課題の結果は指定したディレクトリに残しておくこと。評価の対象とします。