第2章 pag1tetoの改良項目リスト

第3節 減色の高速化

第1項 全体の高速化
C++版の方をWin32sに対応する
VB版の方をWin32に対応させるVB4.0が出てから
call32を使って、DLLだけ32bitに対応する
WinGに対応する
変更したオプションに応じて、必要部分だけ再実行
パレット作り、疑似階調表示を分離
最も原始的な、ビットを削減することで256色以下にするアルゴリズム
インライン展開を指定することによる高速化
ユーザーインタフェイス部分をVBからCに変更する←要望2件
 9/25にDelphiが出るので、それに変更する可能性があります。

第2項 メモリを節約して、高速化する
DLLを1つにまとめてファイルサイズを減らす

第3項 ヒストグラム
int精度のサンプリングによる高速化
512色オプションを可能にする
HASH_CRASHの状態毎の、速度を比較
16bit色のビットマップの高速化(乱数の利用を試す)
ハッシュテーブルのどこまで埋まった状態がもっとも効率的か?
hashの改善で、3秒は速くなる
色テーブルの書き換え時に方向を変更することで、メモリを半分にする
ヒストグラム初期化ルーチンを別にすることで、16MB以上の共通パレットを可能にする
サンプリングを全数調査で無くすることによる高速化
第4項 色空間分割の高速化
直方体のセルに分けて、その頂点を代表点にする。疑似階調表示重視
分散最大のセルを探す時に、TSPのプログラムのアルゴリズムを流用する。
分割バイナリーサーチ
第5項 ボロノイ分割前処理
64分割や27分割を試す
ボロノイ分割時の前処理で、ソートを行なうことによる高速化
第6項 疑似階調表示
中間画像をメモリーに保持する(ランレングス圧縮で保持した方が速い?)
距離をユークリッド距離L2(x*x+y*y)ではなくマンハッタン距離L1(|X|+|Y|)にする
無意味だけれどチェス距離L∞も
if(hist_count[]=0L)をいつまでも使うのを止めてjun[]にする
shift命令と、ビットフィールドとを比較
スタティックカラー用のcolor_mapを最初から配列に持つ
第7項 pag1min
Win32sに対応することで高速化
tetora_flag=0を前提にサイズを減らす

          

第4節 減色について高機能化

第1項 複数画像の表示、共通パレット
そのまま
パレットの平均
パレットの重み付き平均
複数のビットマップファイルに共通のパレットを作る
固定パレット、与えられたパレットでの表示
固定パレットWinG
固定パレットWinG+残りの20色を最適化
固定パレットWinGの4倍の画質
共通パレットを使って表示するタイミングについて
複数画像表示の特許出願番号をヘルプとオープニングに追加する
第2項 代表色を、点ではなく線にする
第3項 固定パレット+ディザー
固定パレットモードの追加WinGの4倍の画質を目指す
体心固定パレット256色の場合、{格子点、面心、体心(ケルビン配置、ウィア配置}の中では、これが好都合だった。
第4項 与えられたパレット
最適化パレットと疑似階調表示機能の分離
一部分だけの固定パレット(ゲーム向き)
30色(5*3*2)の固定パレット+215最適化パレット
HSV(17:3:5)について量子化したパレット
百科事典の色見本
PhotoCDのパレットを調べる
第5項 疑似階調表示
ランダムディザーも選択可能にする
第6項 少ないパレット数
n(<=256)点を指定して、それらが別々の色になるまで 98用の4096色中16色画像 98用の4096色中16色2画面パラパラ画像 24bit色中256だけではなく、18(15,12)bit色中256色などにも対応 使っていないパレット分サイズを小さくする 第7項 パレットの整列 黒から白への最短経路問題を解く 反転したときに、出来るだけ遠い色になるパレット 第8項 複数画像を1枚のbitmapと複数のパレットにまとめる 複数のモノクロ画像を1枚のパレット画像にまとめる 色セロファン用の立体視画像を作る 回転する立方体をパレットアニメで実現する 16bit,15bit化 3D写真用の画像 3d-maxという製品では、v-syncで左右の目を切り替えていると思ったら、実際は、h-syncごとの切り替えだったので、pag1tetoはあまり関係がなかった。 第9項 赤緑色盲のエミュレート エルグレコがそうだったらしい 第1,第2主成分へ射影 第10項 明度毎に分割、彩度などは、平均の値 ほぼ、モノクロ画像 第11項 パレットファイルの出力 microsoft multi media viewerや、directorで使うらしい 第12項 小領域毎に2色に減色する 第13項 16分割16色のgifファイルを作ることで、ファイルサイズを減らす。 第14項 forceパレット 小さいパレット 最適化部分を半分に減らし、残りを固定パレットにしたもの。 

pag1todo 信頼性、バグ取り、高画質化
pag1todo ImageKnifeでもできるレタッチ機能
          

Topへ戻る
pag1シリーズ目次
pag1シリーズ ToDoList目次

     

 (C)MATSUOKA , Hajime

[HOME][計画]