Subscript indices must either be real positive integers or logicals

1 次查看(过去 30 天)
I am trying to move values from an array to another. In particular I am taking the value of the red, green and blue of the specific pixel of the image using the command
img(x,y,:) %where img is my image
and I want to put it in an array defined as pix1 = zeros(3,1). When I do the simple equation pix1(:,1) = img(x,y,:) I get the error ' Subscript indices must either be real positive integers or logicals'. If I understood well this is due to the fact that the rgb values are floats? How do I get to put them in the array pix1 without rounding the value?
Thanks
  5 个评论
EL
EL 2017-10-25
I am rotating an image and then scrolling each pixel to do the bilinear interpolation with the four surrounding pixels. So I must get the value of the image at x = u-1 which at a certain point becomes zero. I guess I'll just shift the image so as to be constantly in the positive domain.

请先登录,再进行评论。

回答(1 个)

Andrei Bobrov
Andrei Bobrov 2017-10-25
编辑:Andrei Bobrov 2017-10-25
pix1 = reshape(img(x,y,:),[],1);

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by