Crop images along a row instead of column
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
no zoop
il 6 Ott 2019
Modificato: Akshit Agarwal
il 14 Ott 2019
Hi,
I have a collage of freshwater plankton and want to crop them along a row instead of by column. I have attached the binary picture, I also have the original image. I want to crop all the images in the collage. The code I use to crop by column is...
for k = 1 : numberOfBlobs(n) % Loop through all blobs.
% Find the bounding box of each blob.
thisBlobsBoundingBox = blobMeasurements{n}(k).BoundingBox; % Get list of pixels in current blob.
% Extract out this zoop into it's own image.
subImage = imcrop(OG_images{n}, thisBlobsBoundingBox);
% Saving the cropped image
%% did not add code as it is not needed
0 Commenti
Risposta accettata
Akshit Agarwal
il 9 Ott 2019
Modificato: Akshit Agarwal
il 14 Ott 2019
Hi,
There is no such thing as cropping along row or column, the second parameter in imcrop function is a rectangle [xmin ymin width height] i.e. the bounding box of the subimage that you want to crop out of your image.
So if your code crops along the column then your 'thisBlobsBoundingBox' variable is what is telling the function to crop along the column. Go through your 'blobMeasurements', see how it is defined and change it accordingly.
For example: For an image of size 100 X 100.
subimage1 = imcrop(image, [0, 0, 100, 50])
subimage2 = imcrop(image, [0, 50, 100, 50])
will divide the original image along the row (horizontally) and subimage1 and subimage2 will hold both the cropped parts of the image.
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!