用matlab读取jpg图片,并提取RGB值放到三个二维数组里,然后提取绿色均值,红色均值特征.要完整程序.

作者&投稿:召祁 (若有异议请与网页底部的电邮联系)
用matlab读取彩色图片,并提取RGB值按像素顺序放到一个三维矩阵里,该怎么写程序?~

不知道你为什么要生成第一、二、三列分别表示每个像素的r、g、b值的矩阵,其实matlab自动把三个通道分开是有道理的,处理会很方便,如果你一定要生产你想要的矩阵,可尝试以下几种方法:
1.以进制的格式读图片,然后去掉图像的信息头(注意每个格式的头文件包含的字节数都不一样的,以真彩色BMP为例,其头文件有54个字节,去掉着54个字节后就是图像的RGB信息了)
2.第二种会稍微方便些,用imread读图生成一个三维矩阵,然后你新建一个你想要的二维矩阵,把前面得到的RGB信息填充进去

当然是可以的,但你有图像文件吗?发过来,我可以给你写个程序。

clear all,clc;
im=imread('1.jpg');%1.jpg为图片,在m文件所在目录下
s=size(im);
R=im(:,:,1);
G=im(:,:,2);
B=im(:,:,3);
R=reshape(R,[s(1),s(2)]);
G=reshape(G,[s(1),s(2)]);
B=reshape(B,[s(1),s(2)]);
r=mean(mean(R));%红色均值
g=mean(mean(G));%绿色均值
b=mean(mean(B));%蓝色均值


如何用matlab读取一个文件夹里的所有图像并保存为矩阵,将图像放在一...
file_path = 'E:\\MyFiles\\图片收藏\\data\\';% 图像文件夹路径 img_path_list = dir(strcat(file_path,'*.jpg'));%获取该文件夹中所有jpg格式的图像 img_num = length(img_path_list);%获取图像总数量 if img_num > 0 %有满足条件的图像 for j = 1:img_num %逐一读取图像 image_...

如何用Matlab读入并显示图片文件
对于相同的数据,采用uint8格式比双精度格式节省内存空间,从而更经济。在MATLAB中 如果索引图像的颜色图小于256行,则它的图像矩阵以uint8格式存储,否则以双精度格式存储。一:imread:从图像文件夹中读取图像。A = imread(FILENAME,FMT) 读取图像到A,如果文件是包含一灰度图像,A是一二维矩阵,如果文件是...

matlab如何读取10000行3列的txt文件,将第三列数据放到100*100矩阵中...
这3列全都是纯数据吗?最好贴两三行出来看看格式,才知怎么读取。

matlab 读取字符串并串联成路径
觉得好的话,给加点分吧,写起来太辛苦了,尤其是补0 [a,b,c]=textread('C:\\Users\\gk\\Desktop\\a1.txt','%s %n %n',2);d=[b(1),b(2),c(1),c(2)];h={num2str(d(1)),num2str(d(2)),num2str(d(3)),num2str(d(4))};for i=1:length(d)f=d(i);if f<10 for j=1...

怎么让matlab自动读取workspace中一系列矩阵,这些矩阵的名字是有规律...
导入到workspace中的数据matlab已经能够识别,你只要在command window里面随便打一个数组的名字,对应的数据就能显示出来,写在M文件里也没问题。

A为matlab中读入的图片,那么A(i,j)表示什么?
图像A中像素(i,j)对应的灰度值。

matlab怎么输入虚数j
matlab modulus = abs(z);或者计算复数的实部和虚部:matlab real_part = real(z);imag_part = imag(z);此外,MATLAB还提供了许多其他功能来处理复数,包括复数运算、绘制复数图形等。这使得MATLAB成为工程师、科学家和数学家在处理涉及复数的问题时的强大工具。总之,在MATLAB中输入虚数j非常简单,只...

matlab怎么输入虚数j
matlab输入虚数j按照复数形式输入。matlab中用i或j来表示虚部,创建复数时,可以直接按照复数形式输入。复数是指把形如a+bi(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,i称为虚数单位。

matlab中[d1(i),j]=min(d)是什么意思
[d1(i),j]=min(d) 表示把向量d的最小值赋给d1(i),把最小值的位置赋给变量j 例如:>> a = randint(1,10,[1 10])a = 9 10 2 10 7 1 3 6 10 10 >> [b,c]=min(a)b = %%%%% 这里最小值是1,赋给b 1 c = %%%%%最小值的位置...

matlab 如何知道图片中任意两点之间的距离
首先你需要确定提取哪两个点 matlab中图像就是一个矩阵,其表示方式为f(i,j),这表是像素值(例如灰度值),i,j就是坐标值。i表示第几行,j表示第几列 提取其坐标值X1,Y1,X2,Y2,则距离为sqrt((X1-X2)^2 + (Y1 -Y2)^2)

科尔沁左翼中旗18745154596: 用matlab读取jpg图片,并提取RGB值放到三个二维数组里,然后提取绿色均值,红色均值特征.要完整程序. -
平变复方: clear all,clc; im=imread('1.jpg');%1.jpg为图片,在m文件度所在回目录下 s=size(im); R=im(:,:,1); G=im(:,:,2); B=im(:,:,3); R=reshape(R,[s(1),s(2)]); G=reshape(G,[s(1),s(2)]); B=reshape(B,[s(1),s(2)]); r=mean(mean(R));%红色均答值 g=mean(mean(G));%绿色均值 b=mean(mean(B));%蓝色均值

科尔沁左翼中旗18745154596: 利用Matlab中的imread怎么读取图片 -
平变复方: 方法/步骤 1、在matlab软件中,读取图像数据(载入)利用的是imread函数,主要有以下4种方式: A = imread(filename, fmt) [X, map] = imread(...) [...] = imread(filename) [...] = imread(URL,...) [...] = imread(...,Param1,Val1,Param2,Val2...) 作为初...

科尔沁左翼中旗18745154596: 如何用Matlab读取图片 -
平变复方: clear all close all bw=imread('xxxxxxxxxxxxx,jpg');%你的图片 figure;imshow(bw);

科尔沁左翼中旗18745154596: 如何用matlab读取图像文件 -
平变复方: 1、以文件打开方式读入图片 [fn,pn,fi]=uigetfile('*.bmp','选择图片'); I=imread([pn fn]);2、直接读入图片 I=imread('F:\exam\Matlab\shibie\1.jpg'); F:\exam\Matlab\shibie\1.jpg 是图片1.jpg的路径

科尔沁左翼中旗18745154596: 在MATLAB中怎样读入图像,图像应该保存为什么格式,保存在哪,非常感谢 -
平变复方: A = imread('filename'); 读取当前目录下的由filename指定的图像.如果图像不在当前目录下,则必须指定完整的路径名.比如:一幅名为test.jpg的图像位于E:\My Documents\Image文件夹中,那么 用 A = imread('E:\My Documents\Image\test.jpg'); 就可以读入该图像 然后用 imshow(A); 就可以显示该图像.MATLAB可以读取任意格式的图像,保存位置可以自定.

科尔沁左翼中旗18745154596: MATLAB能否打开jpg格式的图片吗 -
平变复方: MATLAB可以用 imread()打开jpg格式的图片.如 X = imread('原始NDVI(matlab).jpg') %将图片以数组的形式赋值给X image(X) %显示图片

科尔沁左翼中旗18745154596: 大家好,matlab如何打开.jpg文件? -
平变复方: 读入到matlab中用I=imread('你的图片路径及名称'),imshow(I)就是展示图片!

科尔沁左翼中旗18745154596: 刚开始学matlab,请问要怎么用matlab读取JPG格式的图片其中一部分RGB值呢?谢谢~ -
平变复方: 因为image就是这样的,不可能出现负值.你把image先转成int矩阵,然后对矩阵进行运算,我给你举了一个例子,你看一下:>> a=imread('test1.bmp');>> size(a) ans = 901 1201 3>> b=a;>> b(901,1201,1)=-1;>> b(901,1201,1) %这个时候我没有转,所以即使是-1显示的还是0 ans = 0>> b=int16(b); %转成整数矩阵>> b(901,1201,1)=-1;>> b(901,1201,1) ans = -1>>

科尔沁左翼中旗18745154596: matlab怎么读取图像啊,我放在桌面上读不出来啊 -
平变复方: 把图片放到当前workspace的目录下,假定该图片的名称为“1.jpg”,那么对应的在matlab中的命令为imreag('1.jpg'); 可以得到该图像的矩阵数据,就可以进行相应的操作了

科尔沁左翼中旗18745154596: 你好哈,请问利用matlab怎么提取一幅jpg图像(自己照相机拍的)的特定像素点的坐标和RGB值. -
平变复方: 笨点的办法就是把图片数据读出来,在变量查看窗口里面看. 如果编程,可以用impixel之类的命令查找特定点的颜色值;

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网