matlab灰度线性变换不使用函数的代码
时间: 2023-12-13 20:03:59 浏览: 62
灰度线性变换是一种简单的图像增强方法,可以通过调整图像的亮度和对比度来改善图像质量。下面是一段 Matlab 代码,实现了灰度线性变换,其中不使用任何函数:
```matlab
% 读入图像
img = imread('image.jpg');
% 获取图像的最大值和最小值
img_min = min(img(:));
img_max = max(img(:));
% 灰度线性变换
img_new = (double(img) - img_min) / (img_max - img_min) * 255;
% 显示原图和处理后的图像
subplot(1,2,1);
imshow(img);
title('原图');
subplot(1,2,2);
imshow(uint8(img_new));
title('灰度线性变换后的图像');
```
在上面的代码中,首先读入一幅图像,然后通过 `min` 和 `max` 函数获取图像的最小值和最大值。接着利用灰度线性变换公式将图像中的每个像素值进行线性变换,使其像素值范围在 0 到 255 之间,并将结果保存在 `img_new` 中。最后将原图和处理后的图像显示出来,方便观察效果。
相关问题
matlab灰度线性变换
Matlab中的灰度线性变换可以通过以下步骤实现:
1. 读取图像:使用imread函数读取图像。
2. 灰度化:使用rgb2gray函数将彩色图像转换为灰度图像。
3. 线性变换:使用imadjust函数进行线性变换。可以使用以下公式计算变换后的像素值:
new_pixel_value = (old_pixel_value - old_min) * (new_max - new_min) / (old_max - old_min) + new_min
其中,old_min和old_max分别为原始图像中最小和最大的像素值,new_min和new_max分别为目标图像中最小和最大的像素值。
4. 显示图像:使用imshow函数显示变换后的图像。
下面是一个示例代码:
```matlab
% 读取图像
original_image = imread('lena.jpg');
% 灰度化
gray_image = rgb2gray(original_image);
% 线性变换
new_min = 0;
new_max = 255;
old_min = min(gray_image(:));
old_max = max(gray_image(:));
new_gray_image = imadjust(gray_image, [old_min old_max], [new_min new_max]);
% 显示图像
subplot(1, 2, 1), imshow(gray_image), title('原始图像');
subplot(1, 2, 2), imshow(new_gray_image), title('变换后的图像');
```
在上面的代码中,我们使用了lena.jpg这张图像作为示例。你可以替换成你自己的图像。
matlab编写线性灰度变换程序,不使用matlab自带函数
以下是一个matlab编写线性灰度变换程序的例子,不使用matlab自带函数:
```matlab
% 读取图像
img = imread('lena.jpg');
% 显示原始图像
subplot(2,2,1);
imshow(img);
title('Original Image');
% 求原始图像的直方图
subplot(2,2,2);
imhist(img);
title('Histogram of Original Image');
% 获取图像的行数和列数
[rows, cols] = size(img);
% 定义线性函数的参数
a = 1.5;
b = 50;
% 线性灰度变换
for i = 1:rows
for j = 1:cols
img(i,j) = a * double(img(i,j)) + b;
end
end
% 显示变换后的图像
subplot(2,2,3);
imshow(uint8(img));
title('Transformed Image');
% 求变换后的图像的直方图
subplot(2,2,4);
imhist(uint8(img));
title('Histogram of Transformed Image');
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![m](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)