matlab提取图片像素点,并重新上色
时间: 2023-11-28 18:58:00 浏览: 80
可以使用MATLAB中的imread函数读取图片,然后使用imresize函数调整图片大小(可选)。
要提取像素点,可以使用imread函数读取的图像矩阵,然后使用双重循环来访问每个像素点的值,例如:
```
img = imread('test.jpg'); % 读取图片
[rows, cols, channels] = size(img); % 获取图片的行数、列数和通道数
for i = 1:rows
for j = 1:cols
% 获取像素点的RGB值
r = img(i, j, 1);
g = img(i, j, 2);
b = img(i, j, 3);
% 在这里添加对像素点的处理代码
end
end
```
要重新上色,可以使用imwrite函数将修改后的图像保存为新的文件。例如,以下代码将所有像素点的红色通道值设置为255,将其他通道值设置为0:
```
img = imread('test.jpg'); % 读取图片
[rows, cols, channels] = size(img); % 获取图片的行数、列数和通道数
for i = 1:rows
for j = 1:cols
% 获取像素点的RGB值
r = img(i, j, 1);
g = img(i, j, 2);
b = img(i, j, 3);
% 将红色通道值设置为255,其他通道值设置为0
img(i, j, 1) = 255;
img(i, j, 2) = 0;
img(i, j, 3) = 0;
end
end
imwrite(img, 'new_test.jpg'); % 保存修改后的图像
```
阅读全文