如果我有图像,如何使用matlab
感谢。
答案 0 :(得分:10)
图像是MATLAB中的矩阵(如果是灰度,则为2D,如果是彩色的,则为3D)。
您可以使用x(i,j)
访问灰度图像中位置(i,j)
的像素。
如果图像是彩色的,您可以使用x(i,j,:)
分别访问3向量中的r,g,b值。如果您需要单独的频道,那么您可以使用x(i,j,1)
作为红色。
您可以阅读this page了解详情。
答案 1 :(得分:1)
您可以使用reshape
将图像的所有像素值提取到具有像素值的矢量中:
frame = imread('picture.jpg');
frame_size = size(frame);
allpixels = reshape(frame, frame_size(1)*frame_size(2), frame_size(3))
当您想要对Matlab代码进行矢量化时(避免遍历每个像素的for
循环),这非常有用。要取回原始图像表示:
frame2 = reshape(allpixels, frame_size);
答案 2 :(得分:0)
要获取pixel(1,1)
的值,我们只需编写image(1,1)
。