Matlab- поставить рамку вокруг скользящего окна

Привет у меня есть код, который помещает скользящее окно поверх изображения в Matlab. Если пиксели в скользящем окне удовлетворяют определенным условиям, то мне нужно выделить это скользящее окно на исходном изображении, поместив вокруг него прямоугольник.

Может кто-нибудь объяснить мне, как это сделать?

Благодарю.

 if average>200
         N2=8;
         info2 = repmat(struct, ceil(size(Z, 1) / N2), ceil(size(Z, 2) / N2)); 
         for row1 = 1:N2:size(Z, 1)%loop through each pixel in the 8x8 window
             for col1 = 1:N2:size(Z, 2)
                 x = (row1 - 1) / N2 + 1;
                 y = (col1 - 1) / N2 + 1;

                 imgWindow2 = Z(row1:min(end,row1+N2-1), col1:min(end,col1+N2-1));
                 average2 = mean(imgWindow2(:)); %calculate mean intensity of pixels
                 window2(x,y).average=average2;
                % display(window2(x,y).average);


                % if the intensity of the 8x8 window is greater than
                % 210 then considered suspicious-
                 if average2>210
                 %%%% THEN HIGHLIGH THIS WINDOW ON THE ORG IMAGE (Z)
                 end 
             end
         end

1 ответ

Если вы хотите отобразить это на рисунке, вы можете использовать imrect функция. Если вы хотите нарисовать прямоугольник в самом изображении, и у вас есть набор инструментов системы Computer Vision, вы можете использовать insertShape или же insertObjectAnnotation функции.

Другие вопросы по тегам