• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ppm raw形式の構造)

ppm形式の画像を読み込むプログラムでのraw形式の部分の処理について

このQ&Aのポイント
  • ppm形式の画像を読み込むプログラムで、raw形式の部分の処理は、2値raw形式の場合に使用されます。
  • 処理の一部で、画像の幅を8で割った値を使ってループ処理を行っています。
  • また、RGB情報を取り込む際、2値raw形式の場合は0と1の値を逆転させて255という値に変換します。

質問者が選んだベストアンサー

  • ベストアンサー
  • KamoPlat
  • ベストアンサー率46% (23/50)
回答No.1

getcは1byteのデータを読みますが、pbmは1byteで8ピクセルのデータを保持しています。 そのため横一列(幅xピクセル)の情報を取得するのに端数がでることが有ります。それを処理しています。 例えば幅100pixなら 100 = (8*12) + 4 の括弧で括った部分を先に処理しています。 が、必要なわけではないです。kのループ内で判定した方がすっきりします。 まぁコストはかかりそうですが、止めた方がいいと思います。 pbmは白黒しかありませんので各ピクセルのRGBの取りうる値は (255,255,255)か(0,0,0)しかありません。 ですのでシフトで目的のビットの値を最下位ビットにして、その0or1で白黒を決めています。 でもなんだか反転してますね? 何でだろう……記憶違いかな? 面倒ですのでそこはご自分でお願いします(汗)

arcsin
質問者

お礼

なるほど、いわれてみれば2値しか取りえないので1bitごとに1pxの情報を詰められるんですよね。肝心なことを忘れていました。。 8bit=1byteの8だったとは・・・ ありがとうございました。

関連するQ&A

専門家に質問してみよう