Arkadaşlar merhabalar,Bitirme projesi olarak matlabda webcam üzerinden yuvarlak nesneleri takip eden ve çaplarını ölçen bir proğram yazdım. Bunu matlab GUI ye aktarmam gerekiyor. Yardım edebilirseniz çok sevinirim. GUI de benim yazdığım proğramda bulunan tespit edilen yuvarlak obje sayısı GUI de textbox olarak bulunması gerekiyor. sadece bunu aktaramadım. son bi haftam kaldı yardım edermisiniz.
proğram şu şekilde
during_time =input('during time [100]? ');
if length(during_time)==0, during_time==100; end
imaqhwinfo
cam=imaqhwinfo;
cam.InstalledAdaptors
vid = videoinput('winvideo', 1, 'RGB24_640x480')
set(vid, 'FramesPerTrigger',1);
set(vid, 'TriggerRepeat',Inf);
triggerconfig(vid, 'Manual');
start(vid);
for(i=1:during_time)
trigger(vid);
I = getdata(vid,1,'uint8');
k1=I
,:,1);
k2=I
,:,3);
a1= k1>125 & k2<85;
a2=bwareaopen(a1,10);
se=strel('disk',4);
a3=imclose(a2,se);
a4=imfill(a3,'holes');
s=regionprops(a4,'Centroid','area','Eccentricity');
[m n]=size(s);
imshow(I);
hold on
if m ~=0
for i=1:m;
r=ceil(sqrt((s(i).Area)/pi));
plot(s(i).Centroid(1),s(i).Centroid(2),'r*');
DaireHesaplama(s(i).Centroid(1),s(i).Centroid(2),r,1000,'red');
end
end
hold off
drawnow;
end
DAİRE HESAPLAMA FONKSİYONU
theta = 0 : (2 * pi / nseg) : (2 * pi);
pline_x = r * cos(theta) + x;
pline_y = r * sin(theta) + y;
plot(pline_x,pline_y,S);
proğram şu şekilde
during_time =input('during time [100]? ');
if length(during_time)==0, during_time==100; end
imaqhwinfo
cam=imaqhwinfo;
cam.InstalledAdaptors
vid = videoinput('winvideo', 1, 'RGB24_640x480')
set(vid, 'FramesPerTrigger',1);
set(vid, 'TriggerRepeat',Inf);
triggerconfig(vid, 'Manual');
start(vid);
for(i=1:during_time)
trigger(vid);
I = getdata(vid,1,'uint8');
k1=I
k2=I
a1= k1>125 & k2<85;
a2=bwareaopen(a1,10);
se=strel('disk',4);
a3=imclose(a2,se);
a4=imfill(a3,'holes');
s=regionprops(a4,'Centroid','area','Eccentricity');
[m n]=size(s);
imshow(I);
hold on
if m ~=0
for i=1:m;
r=ceil(sqrt((s(i).Area)/pi));
plot(s(i).Centroid(1),s(i).Centroid(2),'r*');
DaireHesaplama(s(i).Centroid(1),s(i).Centroid(2),r,1000,'red');
end
end
hold off
drawnow;
end
DAİRE HESAPLAMA FONKSİYONU
theta = 0 : (2 * pi / nseg) : (2 * pi);
pline_x = r * cos(theta) + x;
pline_y = r * sin(theta) + y;
plot(pline_x,pline_y,S);