У меня есть число изображений, которые должны быть отмечены определенным количеством фиксированных точек. (отслеживание объектов) Я использую impoint
, чтобы сделать точки на изображении, а затем построить их для логического подключения друг к другу. Все идет нормально. Затем я нажимаю следующий (на моем графическом интерфейсе MATLAB, разработанном с использованием GUIDE), и новое изображение загружается по оси, и информация теряется (точка).Сохранение графика на изображении, нарисованном с использованием функции impoint
- Как сохранить нанесенный график
impoint
для моего следующего изображения? - Как я могу убедиться, что при перемещении
impoint
линии линии также перемещаются?
То, что я до сих пор работать вокруг:
То, что я уже использовал addNewPositionCallback
для Updation положения точки. Этот обратный вызов, когда написано: addNewPositionCallback(H, @fnc);
он выдает вызов функции что-то вроде fnc(pos)
Моя проблема заключается в том, что этот обратный вызов не обеспечивает ручку.
Следовательно, без информации о ручках я не могу адресовать правый элемент в коде. На данный момент я реализовал это так, что написал 18 однострочных функций для фиксированного числа 18 точек, которые мне нужно отметить на изображении. эти функции вызывают одну и ту же функцию updatestructure(position, 'point_name', handles)
, которая называется сразу после создания impoints для построения связи между ними на изображении. Но и здесь у меня нет информации о ручках. Вот что я пробовал:
pointname = impoint(gca,[]);
setcolor(h,'y');
position = getPosition(h);
updatestructure(position, 'pointname', handles);
addNewPositionCallback(h, @movepointname)
Так что, когда структура обновления называется сюжетом, отлично работает. Я вижу, чего хочу. Но когда я перемещаю точечную функцию, вызывается movepointname()
, и при запуске проблемы.
function movepointname (smart_pos)
updateStruct (smart_pos, 'pointname');
end
Это, несомненно, сгенерировало ошибку, поскольку информация о ручках не была передана. Я попробовал vargin
, чтобы определить, что он должен делать, когда задан меньше аргументов. В этом я все еще нуждаюсь в ручках откуда-то.
спасибо.
Что вы для вашего детального ответа. Я не мог добавить дополнительную информацию здесь из-за ограничения персонажа. добавили информацию в вопросе decription, чтобы exaplin проблему более подробно. – Tomar
Я помню, что некоторое время назад я столкнулся с аналогичной проблемой с прямоугольниками 'imrect', потому что они также не раскрывают свои дескрипторы в обратных вызовах. См. Здесь: http://www.mathworks.com/matlabcentral/newsreader/view_thread/282342 надеюсь, что это поможет как-то – anandr
Я предполагаю, что нашел решение. Поставит полное решение подробно, как только оно будет работать. Все еще работаю над этим. назад после короткого отпуска, немного ржавого. – Tomar