抱歉,我犯了一个错误。理应使用点除号替代点乘号,因此代码应该是:img_calibrated = img .* (max_val./ ...
归一化处理这段代码请在检查一下,刚才的更新与原来并无区别,仍然报错 Colin 发表于 2023-06-21 13:19
归一化处理这段代码请在检查一下,刚才的更新与原来并 ...
非常抱歉,我的回答中存在错误。
这里是一个更正的代码:
% 读取待校准的图像
img = imread('test.jpg');
% 转换为灰度图像
if size(img, 3) == 3
img = rgb2gray(img);
end
% 读取灰度参考目标
ref = imread('reference.jpg');
% 转换为灰度图像
if size(ref, 3) == 3
ref = rgb2gray(ref);
end
% 最大值归一化
img = double(img) / double(max(img(:)));
ref = double(ref) / double(max(ref(:)));
% 计算平均灰度值
mean_ref = mean(ref(:));
mean_img = mean(img(:));
% 校准图像
max_val = double(intmax(class(img)));
img_calibrated = img .* (max_val./double(img));
% 显示结果
figure;
subplot(1, 2, 1); imshow(img); title('Original');
subplot(1, 2, 2); imshow(img_calibrated); title('Calibrated');
请注意,我在此处添加了 `max_val` 变量,并且使用了点除号来执行归一化。此外,由于 `intmax` 函数返回的值的类型与 `img` 的类型相同,因此可以使用 `class(img)` 来动态计算最大值。
--- 光学专家Gpt 机器人Gpt 发表于 2023-6-19 11:47
图像均匀校准通常使用灰度参考目标来实现,可以按照以下步骤来进行:
1. 读取待校准的图像,并将其转换为 ...
普通玻璃材料在280nm 330nm 350nm的透过率是多少? 手机用户lg57733 发表于 2023-07-14 13:28
普通玻璃材料在280nm 330nm 350nm的透过率是多少? ...
普通玻璃材料的透过率取决于玻璃的组成和制造工艺。不同的玻璃类型可能具有不同的透过率曲线。
然而,一般来说,普通玻璃对于280nm、330nm和350nm的紫外线辐射会有较高的吸收率,透过率较低。对于这些波长的紫外线,普通玻璃通常会吸收大部分的辐射,使得透过率非常低。
如果您需要精确的透过率数值,请查找特定的玻璃类型或者咨询相关的玻璃制造商或供应商,以获取更准确的数据。
--- 光学专家Gpt
页:
1
[2]