要删除 Matlab 中周围 50 个像素的宽度,您可以使用以下步骤:
1读取
img = imread('your_imagepng');
2获取的尺寸
[height, width, ~] = size(img);
3删除周围 50 个像素的宽度
img = img(51:height-50, 51:width-50, :);
4显示修改后的
imshow(img);
这些步骤将会裁剪掉周围 50 个像素的宽度,使得的大小变为原来的高度和宽度各减少 100 像素。请注意,这里的 50 是一个示例值,您可以根据需要调整这个值来适应您的具体情况。
假设原为“imagejpg”
代码如下:
clc;
clear;
%读入原图像
image = imread('imagejpg');
s = size(image);
%s=[98,97,3],表示image是3个9897的矩阵,分别代表这个图像每个像素点的R、G、B值
%点[30,30]处的RGB数值:
p_r = image(30,30,1);
p_g = image(30,30,2);
p_b = image(30,30,3);
%分别读取RGB
image_r = image(:,:,1);
image_g = image(:,:,2);
image_b = image(:,:,3);
%测试RGB输出
subplot(2,2,1),imshow(image_r),title('Red component');
subplot(2,2,2),imshow(image_g),title('green component');
subplot(2,2,3),imshow(image_g),title('blue component');
subplot(2,2,4),imshow(image),title('original image');
扩展资料:
1、文件的数据,简单地说,就是一个二维数组,二维数组的行对应图像的高,二维数组的列对应图像的宽,二维数组的元素对应图像的像素,二维数组元素的值就是像素的灰度值。
2、彩色空间是用来表示彩色的数学模型,又被称为彩色模型。RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的。
参考资料:
百度百科-imread
可以使用imread函数从GEOTIFF图像文件中读取图像数据。它将返回一个标准的MATLAB数组,其中包含图像的像素值。
以下示例代码将从4GTIFF文件中读取图像:
I = imread('sampletif');
还可以使用geotiffinfo函数读取GEOTIFF图像的元数据信息:
geoinfo = geotiffinfo('sampletif');
geoinfo变量将包含关于图像的地理参考信息,如投影,地理范围和单元大小等。
KEY:图像即可理解为一个矩阵;
比如灰度图像(2维),这样全副图是I;
I1 = I(1:200,:);
表示原图I所有列的第1~200行;
同样可以截取列:
I1 = I(:,300:350);%所有行的第300~500列;
或者:
I1 = I(400:450,300:350);%表示截取左上点坐标(400,300)到右下点坐标(450,350)的一块图像;
imshow(I1,[])即输出截图。
以上就是关于matlab删除图片周围宽度为50个像素全部的内容,包括:matlab删除图片周围宽度为50个像素、如何利用matlab导入并提取jpg彩色图像像素点的坐标及其RGB值想要完整的编码。谢谢哈。、matlab读取4gtiff只能读一半等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)