我在处理三维图像,请问我如何用matlab读取所有像素的灰度值和坐标值呢?O(∩_∩)O谢谢

2024年11月22日 20:13
有2个网友回答
网友(1):

a=imread('图片位置.jpg');图片为RGB图片
R=a(:,:,1);红色分量
G=a(:,:,2);绿色分量
B=a(:,:,3);蓝色分量
图像是以矩阵的形式出现,所以其行数和列数就是其坐标值。假如R(29,65)中的29是横坐标,65是纵坐标。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
如果读取灰度值,直接将RGB图像转化为灰度图像
a=imread('图片位置.jpg');图片为RGB图片
b=rgb2gray(a);
b中的数据就是图像的灰度值,坐标值和上面所说的一样。

网友(2):

你说的3D图像是指RGB彩色图像么,讲白的话很简单的。R通道,I(:,:,1),G通道I(:,:,2),B通道(:,:,3);也就是把这个3D矩阵分解成3个2D矩阵,每个矩阵的上点的值就是每个像素的像素值了,其位置就是坐标咯