How do I create a minimum bounding box from locations in cornerPoints object?
18 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Chica_chic
el 6 de Jun. de 2016
Respondida: karim botros
el 8 de Abr. de 2022
I am trying to create a minimum bounding box(rectangle) from the corner locations obtained by selecting 75 strongest points after using detectMinEigenFeatures(the example given in the documentation). Here is my code:
I = imread('F:\8th sem\programs\proc_8\001.jpg'); corners = detectMinEigenFeatures(I); strong = corners.selectStrongest(70); figure, imshow(I); hold on plot(strong);
I want to know how to create a rectangle that encloses my region on interest with these corner point locations. Can someone help me in writing the code?
0 comentarios
Respuesta aceptada
KSSV
el 6 de Jun. de 2016
Are you expecting rectangle like below?
I = imread('F:\8th sem\programs\proc_8\001.jpg');
corners = detectMinEigenFeatures(I);
strong = corners.selectStrongest(70);
figure,
imshow(I);
hold on
plot(strong);
coor = strong.Location ;
xmin = min(coor(:,1)) ; xmax = max(coor(:,1));
ymin = min(coor(:,2)) ; ymax = max(coor(:,2));
% Rectangle coordinates
O = [xmin,ymin ; xmax ymin ; xmax ymax ; xmin ymax ; xmin ymin] ;
plot(O(:,1),O(:,2),'k')
2 comentarios
Más respuestas (3)
Nut
el 6 de Jun. de 2016
Hi,
I think this code should be ok for you:
x_coordinates = strong.Location(:,1);
y_coordinates = strong.Location(:,2);
left_edge = floor(min(x_coordinates));
right_edge = ceil(max(x_coordinates));
up_edge = floor(min(y_coordinates));
down_edge = ceil(max(y_coordinates));
new_I = I(up_edge:down_edge,left_edge:right_edge);
imshow(new_I)
Amir Barkhordary
el 13 de Jul. de 2018
I am trying to create a rectangular bounding box of coordinates (latitude and longitude) to find out about the SST in Great Barrier Reef. For example the coordinates of Lizard Island in Queensland are: -14.667997328 145.455664844. In order to create a SST file using seaDAS Program I would would at least to have more coordinates (such left right top bottom) for this region but I do not know how create such a box containing the region's geographical characteristics in Matlab. I appreciate any help :)
0 comentarios
karim botros
el 8 de Abr. de 2022
you can plot a rectangle or anyshape around the matched feature points using the following code:
minx = min(matchedPoints.Location(:,1));
miny = min(matchedPoints.Location(:,2));
maxx = max(matchedPoints.Location(:,1));
maxy = max(matchedPoints.Location(:,2));
rectangle('Position', [minx, miny, (maxx-minx),(maxy-miny)],...
'EdgeColor','g', 'LineWidth', 2)
0 comentarios
Ver también
Categorías
Más información sobre Image Processing Toolbox en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!