Постройте точки и квадраты на двух изображениях в Matlab

Я знаю, что это спрашивали раньше, но я не мог применить это.

Я применяю гомографию к изображению, и для отчета мне нужно показать, какие точки я выбрал (нарисовал точки), а также мне нужно показать соответствующий квадрат на обработанном изображении.

Одно из изображений, которое я использовал,

http://puu.sh/cmsL1/02c1ef6e64.jpg

Точки, которые мне нужно изобразить как точки,

 X           Y

 95.0000   109.0000
 80.0000   297.0000
385.0000   274.0000
383.0000   224.0000

и точки, которые мне нужно изобразить на изображении ниже в виде квадрата,

http://puu.sh/cmsQb/45349305cd.jpg

 Xp   Yp

 90   133
 90   198
391   198
391   133

Надеюсь, вы можете мне помочь!

Я пытался

p=[3,4]
plot(p(1),p(2),'Marker','p','Color',[.88 .48 0],'MarkerSize',20);

Но я действительно не понимаю код. Он рисует точки на белом изображении. Позже я попытался

hold figure
imshow(im) plot(p(1),p(2),'Marker','p','Color',[.88 .48 0],'MarkerSize',20);
hold on

но это не сработало.


person Ignacio    schedule 22.10.2014    source источник
comment
@Jias Сначала я попытался нарисовать любую точку, например p=[3,4], и я использовал plot(p(1),p(2),'Marker','p','Color',[.88 . 48 0], «Размер маркера», 20); но я действительно не понимаю код. Он рисует точки на белом изображении, а позже я попытался использовать фигуру удержания, imshow (im) plot (p (1), p (2), «Маркер», «p», «Цвет», [.88 .48 0 ],'Размер маркера',20); держись, но это не сработало   -  person Ignacio    schedule 23.10.2014
comment
Пожалуйста, поделитесь кодом, который вы пробовали. Поместите это в вопрос, а не в комментарий. Кроме того, сначала прочитайте stackoverflow.com/help/how-to-ask.   -  person Parker    schedule 23.10.2014
comment
Попробуйте прочитать это.   -  person Jias    schedule 23.10.2014
comment
Возможный дубликат: stackoverflow.com/questions/3178336/   -  person Parker    schedule 23.10.2014


Ответы (1)


Чтобы нанести точки на изображение, выполните следующие действия:

hold on
scatter(X, Y)

Вы также можете добавить свойства, например, если вы хотите красные круги, которые вы можете сделать

scatter(X, Y, 'ro')

Удержание части важно, так как она будет строить диаграмму рассеяния по предыдущему графику, который у вас есть, который должен быть вашим изображением.

Что касается квадрата, то же самое применимо, нарисуйте свое изображение, удерживайте и используйте команду линии, как показано ниже.

hold on
line([Xp],[Yp])

где xp и yp — векторы-строки, содержащие все точки x и y соответственно, между которыми вы хотите провести линии. Не забудьте добавить линию в конце, соединяющую последнюю точку с первой.

person schlow    schedule 19.11.2014