Info
此问题已关闭。 请重新打开它进行编辑或回答。
problem with cropping images across 6 images
1 次查看(过去 30 天)
显示 更早的评论
i want to crop an image and automatically crop the other 5 images instead of cropping one by one. this is the code i used but i cannot seem to make the 5 other images appear.
[I1c rect] = imcrop(handles.axes2) axes(handles.axes2); imshow(I1c);
I2c = imcrop(handles.axes3, rect)
axes(handles.axes3);
imshow(I2c);
I3c = imcrop(handles.axes4, rect)
axes(handles.axes4);
imshow(I3c);
I4c = imcrop(handles.axes5, rect)
axes(handles.axes5);
imshow(I4c);
I5c = imcrop(handles.axes9, rect)
axes(handles.axes9);
imshow(I5c);
I6c = imcrop(handles.axes10, rect)
axes(handles.axes10);
imshow(I6c);
guidata(hObject,handles)
0 个评论
回答(1 个)
Image Analyst
2012-11-1
You aren't cropping an image. You are cropping the handle to an axes control, NOT an image. Try something like this:
I2c = imcrop(I2, rect);
I3c = imcrop(I3, rect);
I4c = imcrop(I4, rect);
I5c = imcrop(I5, rect);
I6c = imcrop(I6, rect);
6 个评论
Image Analyst
2012-11-2
If you captured from a camera, they're in a variable, like
snappedImage = getsnapshot();
If you "have a type of array" where you loaded images from disk files in a folder then of course you must already have the filenames otherwise you would never have been able to "load" them, which you must have done via imread anyway, which is what you're trying to do, so that's ironic. OK, tell me this. When you "loaded an array of images loaded from folders" what lines of code did you actually use to accomplish that? Apparently you didn't use imread() because you're having trouble doing that now, so what did you do? How did you get that second type of array you mentioned - the one you loaded from folders? Did you follow the FAQ ( http://matlab.wikia.com/wiki/FAQ#How_can_I_process_a_sequence_of_files.3F>)? Or did you do something else? Or do you not have that second type of array yet?
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!