% 通过程序调整灰度图像的灰度范围 % 编写时间:2017-11-24 20:01:25 编写人:gq close all; clear; clc; orgin_image = imread('pout.tif'); orgin_image = double(orgin_image); % double()将原图像的像素值...
% 通过程序调整灰度图像的灰度范围 % 编写时间:2017-11-24 20:01:25 编写人:gq close all; clear; clc; orgin_image = imread('pout.tif'); orgin_image = double(orgin_image); % double()将原图像的像素值转换为双精度型,但数值大小并不改变 % im2double()将原图像的像素值转换为双精度型,数据相应地调整到0-1之间 modified_image = (orgin_image - 80)*255 / 70; % 计算公式 [row, column] = size(orgin_image); for i = 1:row for j = 1:column if modified_image(i,j)255 modified_image(i,j) = 255; end end end figure; subplot(121), imshow(orgin_image, []); % 将图像矩阵orgin_image(注:double型)的最大值和最小值分别作为纯白255和纯黑0,之间的像素值映射为0-255之间的标准灰度值 subplot(122), imshow(modified_image, []);
但是在这些变换过程中,图像的灰度范围会变得不确定,所以在得到70000张图像后,且保证在CNN网络中输入的图像灰度范围统一在0-1的范围内,于是手动将图像的灰度范围转化到0-1的范围。 使用io.imread读取图像时, ...
灰度图像转化为0-1范围
一个图像处理中的小笔记
由于在做卷积神经网络时,需要对总的训练集的数据400张图像通过平移缩放旋转镜像对称等方式将数据集扩大到70000张。但是在这些变换过程中,图像的灰度范围会变得不确定,所以在得到70000张图像后,且保证在CNN网络中输入的图像灰度范围统一在0-1的范围内,于是手动将图像的灰度范围转化到0-1的范围。
使用io.imread读取图像时, 得到的图像的灰度范围是0-255,但是会出现灰度达不到最大值的情况, 例如一个图像的灰度范围是[0-201],这时候,如果用img_as_float()转化为[0-1]的灰度范围时, 得到的结果是[0-0.788],比例是按照1/255的比来变化的,这时候得到的图像是不符合条件的[没有来头的以为]。所以通过1/(max-min)来得到将的比,使图像变化到0-1。