ピラミッドの形式で保存されている画像に強調 (または画像を変更する操作) を適用する方法。最初に特定のピラミッド レイヤー (現在のズーム レベル) に適用され、次にユーザーがズームした場合に別のレイヤーに再適用されます。インまたはズームアウト、または強化はピラミッド全体に一度に適用されます、または強化の効果を他のピラミッド層に効率的に伝播できるアルゴリズムはありますか。
これを行う最善の方法を知りたいです。
ピラミッドの形式で保存されている画像に強調 (または画像を変更する操作) を適用する方法。最初に特定のピラミッド レイヤー (現在のズーム レベル) に適用され、次にユーザーがズームした場合に別のレイヤーに再適用されます。インまたはズームアウト、または強化はピラミッド全体に一度に適用されます、または強化の効果を他のピラミッド層に効率的に伝播できるアルゴリズムはありますか。
これを行う最善の方法を知りたいです。
2 つの適切なオプションがあります。
最高解像度でアクションを適用し、必要に応じて低解像度を再作成します (現在のレベルと選択されている場合は他のレベル)。
アクションのスタックを保持し、現在のレベルにのみ適用し、レベルを切り替えるとスタック全体をそのレベルに適用します。
これらのオプションの両方で、すべての非現在のレベル* をファイルに保存し、そのレベルが選択されている場合にのみメモリにロードできます。(*メモリに保持する必要があるオプション 1 の最高解像度を除く。)
オプション 1 の方が正確です。低い解像度に直接適用すると、一部のアクションの精度が低下する可能性があります。
現在のレベルが頻繁に変更されず、変更されたときにアクションが現在のレベルに順番に適用されるのに十分な速さである場合、オプション 2 を使用すると、計算と同時実行メモリの使用量が最小になります。
オプション 1 では、最高解像度から現在のレベルを計算するための削減アルゴリズム (サイズ変更) が必要になります。
オプション 2 では、アクションのスタック (+ 各アクションのパラメーター) が必要になります。