I have 6 points as shown in the picture above.
Can I make a closed contour from the 6 points as shown below?
I've tried to use creating ellipse and imfill() but they didn't work.
Thank you.

 채택된 답변

Ameer Hamza
Ameer Hamza 2020년 4월 23일
편집: Ameer Hamza 2020년 4월 23일

1 개 추천

Try this
im = im2double(imread('image.jpeg'));
im_gray = rgb2gray(im);
im_gray = imbinarize(im_gray)*1;
[r,c] = find(im_gray==1);
points = [c r];
p = convhull(points);
points = points(p, :).';
poly_points = points(:).';
im_gray = insertShape(im_gray, 'FilledPolygon', poly_points, ...
'Color', [1 1 1], ...
'Opacity', 1, ...
'SmoothEdges', false);
imshow(im_gray);

댓글 수: 7

Yohanes Setiawan
Yohanes Setiawan 2020년 4월 24일
Thank you for your response.
Why r, c being [c r] in points?
Yohanes Setiawan
Yohanes Setiawan 2020년 4월 24일
편집: Yohanes Setiawan 2020년 4월 24일
Anyway, I haven't had Computer Vision Toolbox :'(
I'm using MATLAB R2018b
This code use image processing toolbox
im = im2double(imread('image.jpeg'));
im_gray = rgb2gray(im);
im_gray = imbinarize(im_gray)*1;
[r,c] = find(im_gray==1);
points = [c r];
p = convhull(points);
points = points(p, :);
im_gray = roipoly(im_gray, points(:,1), points(:,2));
imshow(im_gray);
Yohanes Setiawan
Yohanes Setiawan 2020년 4월 24일
Thanks!
I've installed new version of MATLAB which has Computer Vision Toolbox.
Then I'm running your code and get this error:
Error using insertShape
Expected input number 1, I, to be one of these types:
uint8, uint16, int16, double, single
Instead its type was logical.
Ameer Hamza
Ameer Hamza 2020년 4월 24일
Can you show your code?
Yohanes Setiawan
Yohanes Setiawan 2020년 4월 24일
It has been solved!
I changed into double and WORKED!
Thank you so much for your help.
Ameer Hamza
Ameer Hamza 2020년 4월 24일
I am glad to be of help.

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

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Geometric Transformation and Image Registration에 대해 자세히 알아보기

질문:

2020년 4월 23일

댓글:

2020년 4월 24일

Community Treasure Hunt

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

Start Hunting!

Translated by