一般のソフトで画像を扱う場合、解像度が2のべき乗だと効率がいい?
ゲームの開発などで画像を扱う場合、解像度が 256×256pixel とか 512×512pixel というように、2のべき乗にすることになっています。
その方がメモリの効率がいいからだと聞いています。
では、一般のパソコンソフトでも同じことが言えるのでしょうか?
Office や Photoshop や 3DCGのソフトで画像を読み込む場合でも、解像度を2のべき乗にした方がメモリの効率がいいのでしょうか?
No.1ベストアンサー
- 回答日時:
例えば、 3Dゲームで画像を使うものに、マッピングがありますが。
表示内容に合せて拡大縮小する際には、乗除算が多く使われます。
例) 表示画像幅 w の 座標x (0≦x≦w)に対応する 幅Wの元画像の座標Xは
X= ( x / w ) * W
= W * x / w
逆に, Xに対する xは
x = w * X / W
一般的に、乗除算は、加減算に比べて時間のかかる演算です。
しかし、2の整数べき乗の乗除算に限れば、計算を早くできます。
演算が整数なら、 べき乗数の分ビットシフトするだけです。
演算が浮動小数点なら、コンピュータの内部表現は 仮数 * 2^n なので、このnを加減算するだけです。
計算量の多い3Dグラフィックでは、こういう小さな積み重ねが大きく影響します。
また、最近の32bitや64bit等のCPUでは、データはまとめて4バイト8バイト単位でアクセスするようになっているのが多いです。
そのため、中途半端なアドレスからアクセスするのは効率が悪いです。
Windowsのbitmap形式等、このような制限を回避するために、水平方向のデータは4の倍数になるように、ダミーのデータを入れています。
これが、(4以上の)2のべき乗幅なら、絶対4の倍数になるので、ダミーの必要がありません。
あとは、高速フーリエ変換は2のべき乗に限定した高速化手法です。
これが、一般のソフト、となると、なんとも言えません。
内部でどんな風にあつかってるかわからないからです。
また、「効率」にも速度的なものと空間的なものがあって、排他的な傾向のものが少なくありません(高速なのは容量を使う,省容量では速度が遅くなる)
また、元のべき乗でない画像を、べき乗解像度に変換するには、拡大か縮小が必要ですが、拡大すればその分必要な容量が増えますし、縮小すれば画質が落ちます。
例えば、 320x320を512x512にすれば、画素数は約2.6倍です。いくらべき乗サイズが効率が良いとしても、2.6倍の容量と相殺以上の効果があるとは思えません。
これらのうち、3DCGソフトについては、マップ用にはべき乗サイズしか受け付けない、とか、自動で変換するとかしているかもしれません。
コンピューターのソフトすべてに共通した法則かと思っていたのですが
効率がいいといっても、ソフトによっていろいろな方法があるんですね。
特に2のべき乗を推奨しているわけではないソフトなら、2のべき乗に
したところで効率がいいとは限らないので、それにはこだわらないことにします。
詳しくご説明頂いてありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 画像の一括圧縮 1 2022/12/02 21:56
- Photoshop(フォトショップ) 画像の加工に詳しい方。付属画像のように電子画面??のようなフィルターを掛けたいです。 3 2023/04/15 18:27
- フリーソフト 倍率自動調整して全画面表示できるフリーの画像ビューアー 1 2023/08/24 10:55
- 画像編集・動画編集・音楽編集 YouTubeを録音できるソフトを教えてください。 5 2023/02/12 10:19
- Yahoo!メール Aliexpressから送られてくる画像メールの画像が表示されない 1 2022/05/30 09:10
- デスクトップパソコン 仕事で使うPC 10 2023/04/23 00:27
- その他(パソコン・周辺機器) iPhone→ PC取り込んだHDR動画が白くなってる 1 2023/07/24 22:55
- 冷蔵庫・炊飯器 キッチンの横に置く場合の冷蔵庫の開き方 11 2022/04/06 13:30
- Photoshop(フォトショップ) 【大至急】写真加工に強い方、お願いします。 現在、自作のブックカバーをプリンパさんに依頼しています。 6 2023/06/10 11:51
- 画像編集・動画編集・音楽編集 このようなスクリーンキャプチャソフトありますか? 3 2023/01/31 16:02
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
03分22秒36のような時間の単位...
-
符号無し整数xを右にnビット回転
-
ビットシフトってどんな時使うの?
-
命令について
-
ビット列を表示するプログラム
-
ULONGLONGよりも大きい整数を扱う
-
C言語で128bitの2進数のビット...
-
シェルスクリプトで2
-
浮動小数点数の内部表現につい...
-
文字参照は10進数と16進数では...
-
マイコンでストップウォッチの...
-
アセンブラ言語で質問です。
-
アセンブラのLA
-
レジストってなんですか?
-
C言語によるウェイト
-
アセンブラで割り算
-
ライン数とステップ数の違いは?
-
IBM system/360
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
符号無し整数xを右にnビット回転
-
エクセルVBAのIf,Then 構...
-
ビットシフトってどんな時使うの?
-
一般のソフトで画像を扱う場合...
-
C言語で128bitの2進数のビット...
-
命令について
-
整数除算の意味とは?
-
文字参照は10進数と16進数では...
-
Python: 数値を反転させたい
-
シーケンス制御についての質問...
-
[VBS] 素早くローテート演算したい
-
上位ビットと下位ビットの入れかえ
-
2の補数
-
1の補数
-
ビット演算子
-
コンピュータが処理できるビッ...
-
03分22秒36のような時間の単位...
-
Javaの問題について
おすすめ情報