Filter löschen
Filter löschen

how to delete first row of pixel values?

2 Ansichten (letzte 30 Tage)
ravneet
ravneet am 31 Okt. 2014
Kommentiert: Rik am 12 Okt. 2020
How can i delete or subtract the first row of pixels of an image from the complete image.

Antworten (2)

Geoff Hayes
Geoff Hayes am 31 Okt. 2014
Ravneet - if you want to delete just the first row of your image, then you could do something like the following
myImage = imread('someImage.jpg');
if ndims(myImage)==3
% there are three dimensions
myImage(1,:,:) = [];
elseif ndims(myImage)==2
% there are two dimensions
myImage(1,:) = [];
end
We access all elements in the first row as either myImage(1,:,:) or as myImage(1,:) and set that row to be empty.

Image Analyst
Image Analyst am 31 Okt. 2014
Geoff gave you the way to delete the first row of pixels. If you want to "subtract the first row of pixels of an image from the complete image." then you can do this (untested, and for a gray scale image).
% Get size of image
[rows, columns, numberOfColorChannels] = size(grayImage);
% Extract first row:
firstRow = grayImage(1,:);
% Replicate it to form an image of the same size:
replicatedImage = double(repmat(firstRow, [rows, 1]));
% Do the subtraction
differenceImage = double(grayImage) - replicatedImage;
imshow(differenceImage, []); % Need to use [] or won't see anything.
  4 Kommentare
marie lasz
marie lasz am 12 Okt. 2020
Will it randomly delete the row or column? If I want to delete the selected row/column, then how can I continue?
Rik
Rik am 12 Okt. 2020
It will not delete anything randomly, unless you assign a random value to row or column.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by