How to draw free-hand sketches using imfreehand ?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have to take as input hand drawn sketches ... I have tried using imfreehand() but it completes the figures itself.
I also tried the solution provided by Doug Schwarz in http://www.mathworks.in/matlabcentral/newsreader/view_thread/30168#75552 where he coded the following :
function sketch(cmd)
if nargin == 0
cmd = 'init';
end
switch cmd
case 'init'
fig = figure('DoubleBuffer','on','back','off');
info.ax = axes('XLim',[0 1],'YLim',[0 1]);
info.drawing = [];
info.x = [];
info.y = [];
set(fig,'UserData',info,...
'WindowButtonDownFcn',[mfilename,' down'])
case 'down'
myname = mfilename;
fig = gcbf;
info = get(fig,'UserData');
curpos = get(info.ax,'CurrentPoint');
info.x = curpos(1,1);
info.y = curpos(1,2);
info.drawing = line(info.x,info.y,'Color','k');
set(fig,'UserData',info,...
'WindowButtonMotionFcn',[myname,' move'],...
'WindowButtonUpFcn',[myname,' up'])
case 'move'
fig = gcbf;
info = get(fig,'UserData');
curpos = get(info.ax,'CurrentPoint');
info.x = [info.x;curpos(1,1)];
info.y = [info.y;curpos(1,2)];
set(info.drawing,'XData',info.x,'YData',info.y)
set(fig,'UserData',info)
case 'up'
fig = gcbf;
set(fig,'WindowButtonMotionFcn','',...
'WindowButtonUpFcn','')
end
But I am not able to save the sketch being drawn or access it ..
Please help ...
0 commentaires
Réponses (2)
Walter Roberson
le 4 Avr 2012
After the sketch use
info = get(gcf, 'Userdata')
The result will be a structure with .x and .y coordinate lists.
Image Analyst
le 8 Avr 2012
If you want to use imfreehand to get x,y coordinates, you can do that. Here's s snippet from my demo:
hFH = imfreehand();
% Create a binary image ("mask") from the ROI object.
binaryImage = hFH.createMask();
% Just for demo purposes, get the x,y coordinates.
% We don't use them though in this demo.
xy = hFH.getPosition;
2 commentaires
Voir également
Catégories
En savoir plus sur Modify Image Colors dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!