• 締切済み

画像処理で画面からはみ出した画素の扱いについて

画像処理のソフトウェアを作成しています。 そこで以下の疑問があります。 画像を回転させた場合、 回転後の画像は元の画像より少し大きくなりますが、 その際、4つの角周辺は元の画像にはなかった領域になります。 これらはどのように扱えばいいのでしょうか。 真っ白にしたり真っ黒にしたりするのでしょうか。 また、回転に際して バイリニアやバイキュービックで補間してますが、 画面端の画素の場合、補間元が画面からはみ出してしまいます。 この場合、どのように補間すればいいのでしょうか。

みんなの回答

  • zuihen
  • ベストアンサー率36% (4/11)
回答No.3

>白いテーブルにペットボトルが置かれてる画像なら、はみ出したところは真っ白がいいかもしれませんが、 >海の写真の場合、真っ白にすると完全に切れて見えるのです。 すみません。ここの部分がよく分かりません。 「完全に切れて見える」とはどういう意味ですか?画像を上げて説明して頂けるとありがたいです。 回転させて画像本来のものでない情報を入れるのなら、当然ながら不自然になりますよね。 角の部分に、接している付近部分の辺の色の重み付き平均を塗る…これなら、周辺部分の色が単調な(たとえば黒背景の絵や単調な風景)ものならごまかせるとは思いますが。

miki_rise
質問者

お礼

締め切りました。

miki_rise
質問者

補足

背景が白で中心にペットボトルがおかれている画像ならば、 本来の画像の外側に真っ白で広げても違和感はありませんが、 元が海や空の場合、真っ白で広げると元の画像と 広げた箇所の境目が、 青と白の境界線になってしまうということです。

  • zuihen
  • ベストアンサー率36% (4/11)
回答No.2

ええと……つまり表示は無視して、回転後の画像(データ)を生成したいのですね。解釈間違いました。ごめんなさい。 画像は配列に格納されてるのでしょうか? また、「真っ白にしたり真っ黒にしたりするのでしょうか」とありますが、 miki_riseさんは真っ黒にしたいのですか?真っ白にしたいのですか? それとも指定色で塗りつぶしたいのでしょうか。

miki_rise
質問者

お礼

締め切りました。

miki_rise
質問者

補足

画像に含まれる情報をできるだけ変更しないで加工するにはどうしたらいいのかが知りたいのです。 そのためには真っ白がいいのか真っ黒がいいのか、べた塗りがいいのかわからないのです。 白いテーブルにペットボトルが置かれてる画像なら、はみ出したところは真っ白がいいかもしれませんが、 海の写真の場合、真っ白にすると完全に切れて見えるのです。

  • zuihen
  • ベストアンサー率36% (4/11)
回答No.1

どのような開発環境をお使いでしょうか。 画面上の何のオブジェクトもない領域の扱いは処理する機構に依存すると思います。 DirectXやX11、Qt、HSPは特段何もしなくても黒もしくは灰色が表示されると思います。「背景レイヤーが黒」のような扱いです。 私は黒画像の出力が必要だった経験はありません。 また、補完についても同様で、開発環境に依存すると思います。 これも経験の範囲内(Qt)ですが、表示していない部分のあるオブジェクトでも処理はされる(見えないところで処理される)と記憶しています。 黒部分との境界面のアンチエイリアスについては、分からないです。

miki_rise
質問者

お礼

締め切りました。

miki_rise
質問者

補足

DirectX とかではなく、画像処理のソフトウェアです。 フォトショップやペイントのようなソフトウェアです。

関連するQ&A