这是一个有关图像数字水印的问题:

% 原始图像
I = imread(....);
% 水印图像
W = imread(....);
    
% .................
% 水印嵌入过程
% ..................

% 得到的嵌有水印的图像
Wm = ...;
% 保存到硬盘上
imwrite(Wm,'imbedM.bmp','bmp');

用下面两种方法提取水印:

1、如果从硬盘将嵌有水印的图像读入
J = imread('imbedM.bmp','bmp');
% 水印提取过程:
%.......................
% 利用 I 和 J 进行水印提取
%..................
% 结果不能正确提取出水印

2、如果直接利用前面得到的嵌有水印的图像Wm
% 水印提取过程:
%.........................
% 利用 I 和 Wm 进行水印提取
%..................
% 结果能正确提取出水印

这与图像文件的储存有关系吗?该怎么解决呢?