The purpose of code on programming
1 view (last 30 days)
Show older comments
Hi.
I met a few questions when i watch this code
i seen the comment, but i have no idea why the picture produced like that.
i also confuse for the imageData=[imageData; imageRow]; i know the function of ";", but why it used in here?
% make a 2d array of values.
imageData=[]; % set up an empty array
imSize=100;
numRows=imSize;
numCols=imSize;
%populate using a nested loop
for row=[1:numRows]
imageRow=[]; %empty vector for row
for col=[1:numCols]
pixelVal=uint8((row+col)/(imSize*2) * 255); % make a pixel val in 0..255
imageRow=[imageRow pixelVal]; %add value for pixel
end
imageData=[imageData; imageRow]; % add row of pixels
end
% display as an image
imshow(imageData);
% save as an image
imwrite(imageData,'test.png');
% load an image
newImageData=imread('test.png');
% print information about what is stored in the variable
whos newImageData;
0 Comments
Accepted Answer
Image Analyst
on 27 Mar 2022
I'm not sure why you said "i know the function of ";", but why it used in here?"
In
imageData=[imageData; imageRow];
the first semicolon says that the rowVector imageRow is to be concatenated below the 3-D matrix imageData.
They're essentially building up the matrix row-by-row by appending the current row to the matrix they're building up.
The second semicolon tells it not to type the whole matrix -- all values of it -- to the command window.
3 Comments
Image Analyst
on 27 Mar 2022
That's the formula they're using to make the values go from 0 in the upper left to 255 in the lower right.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!