create binary image with specific parameters

3 次查看(过去 30 天)
Hi, I need to create a binary image like the following from the following input arguments:
  • Number of rows in the binary image. nR
  • Number of columns in the binary image. nC
  • A MX8 matrix containing the position information of each rectangle. In each row you have the information of each one of the rectangles and by columns you have that the odd ones correspond to X coordinates while the even columns to the Y coordinates of the vertices of the rectangle. data. I give a example of data matrix.
nR = 50;
nC = 50;
A = false(nR,nC);
figure, imshow(A,'InitialMagnification','fit')
hold on
for i = 1 : size(data,1)
plot(data(i,1:2:end),data(i,2:2:end),'*')
end
This is what i have as input variables.
Thank you so much for all. What I need is that the pixels that are inside the rectangles delimited by the vertices pass to take logical value 1 of the possible form, because in the accomplishment the number of rectangles surpasses the 10000.

采纳的回答

KSSV
KSSV 2020-8-30
You need to proceed somethings like this:
nR = 100 ; nC = 100 ;
I = zeros(nR,nC) ;
I(50:60,50:60) = 1 ; % 50:60 are the rows and column indices where I want white pixels
imshow(I)
  9 个评论
Alejandro Fernández
Yes but it has erros on rotated rectangles. In some cases it doesn't work properly
Image Analyst
Image Analyst 2020-8-31
Alajendro, I was going to suggest an entirely different approach using poly2mask() but since you've accepted this answer, it looks like you figured everything out, like how to get the coordinates from the colored asterisks in the image, how to group them together by color, and how to fill them out to a rectangle, either rotated or not.

请先登录,再进行评论。

更多回答(0 个)

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by