2012-07-02 21 views
0

我提取了索引圖像的調色板 - 一個256x3矩陣,將調色板複製到512x3矩陣,並在每一半中有重複值。我想要做的是隱寫術。當祕密消息位是0時,我想引用調色板的一半,否則引用另一半。通過這種方式,我們可以在索引圖像中獲得無損隱寫!在MATLAB中擴展索引圖像的調色板

但是,當我嘗試將圖像保存爲位圖與新的顏色映射時,它說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個值的自定義調色板?

回答

2

.bmp和.gif的標準僅支持長度爲256的調色板。您無法解決這個問題。

要使用超過256個條目的調色板,例如,可以使用.jpg。確保你選擇無損壓縮,否則,你的信息將被加密。

+1

[imread](http://www.mathworks.com/help/techdoc/ref/imread.html)和[imwrite](http://www.mathworks.com/help/techdoc/ref/imwrite。 html)文檔頁面有每種圖像格式和支持的位深度的描述 – Amro