インデックス付き画像のカラー パレットを抽出しました。256x3 マトリックスで、パレットを 512x3 マトリックスに複製し、各半分に値を複製しました。私がやりたいのはステガノグラフィーです。シークレットメッセージビットが0のときはパレットの半分を参照し、それ以外は残りの半分を参照したい。このようにして、インデックス付き画像でロスレス ステガノグラフィを取得できます。
しかし、新しいカラー マップを使用して画像をビットマップとして保存しようとすると、bmp/gif ファイルはカラー パレットに 256 を超えるエントリを含めることはできないと表示されます。
[im,map]=imread('mandril_color.gif');
nmap=zeros(512,3);
nmap(1:256,1:3)=map(1:256,1:3);
nmap(257:512,1:3)=map(1:256,1:3);
imwrite(im,nmap,'palette1.gif');
上記は、拡張パレットを使用して画像を保存するかどうかをテストするための私のコードでした..残念ながら、そうではありませんでした。この問題を回避し、256 を超える値を持つカスタム パレットを作成するにはどうすればよいですか?