Any way to free hand crop an image?

조회 수: 5 (최근 30일)
Siddharth
Siddharth 2013년 6월 19일
댓글: ali seraj 2020년 8월 11일
Is there any way to free hand crop on an image? I have an organic shape I want to quickly crop not using the rectangular box that matlab has for cropping. Any way to go about this?

채택된 답변

Sean de Wolski
Sean de Wolski 2013년 6월 19일
How do you propose cropping a non-rectangular shape? Do you want to zero out parts that aren't within in your "cropped" region. An image always has to be rectangular.
doc imcrop
doc impoly
doc imfreehand
If you want to zero out the parts not in the free hand reason. use the createMask method of the freehand region to build a mask of the free hand region. Then negate it and zero everything in it out.
I = imread('cameraman.tif');
imshow(I);
h = imfreehand; %draw something
M = ~h.createMask();
I(M) = 0;
imshow(I);
  댓글 수: 8
Warid Islam
Warid Islam 2019년 7월 23일
Hi,
I found tha MATLAB does not recommend getPosition method. They recommend to use ROI classes. I tried using the ROI.FREEHAND class but I get the following error:
Unrecognized method, property, or field 'roi' for class 'images.roi.Freehand'.
Error in fh4 (line 6)
pos = images.roi.Freehand(); % get position for that ROI
ali seraj
ali seraj 2020년 8월 11일
thank you

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by