Problems with Matlab Projects? You may face many Problems, but do not worry we are ready to solve your Problems. All you need to do is just leave your Comments. We will assure you that you will find a solution to your project along with future tips. On Request we will Mail you Matlab Codes for Registered Members of this site only, at free service...Follow Me.

Darker Edges using matlab



Captured Image


Last week my friend was in need of her signature in digital format. Fortunately, it was not for any official purpose. So we captured the signature using the camera and used it.
The image that we acquired using the camera was not that much good. So we processed the image and then included in the document.
After this thing happened, I thought of trying the image with MATLAB.
First I adjusted the image intensity using the imadjust function . The syntax for the imadjust for rgb image is
imadjust(RGB,[Low_R Low_G Low_B; High_R High G High B],[]);
The Low values should always be lower than High values.
The range of these values between 0 to 1.
After Imadjust

Then I detected the edge of the image. Then to enlarge the image parts I dilated it. Use an appropriate structure element. Here I used 'disk'.
After that, using labeling method, I labeled all the connected components. Based on the size of the components the components where finally used and components whose size are less are ignored.
Edge detected Image

MATLAB CODE:
function my_edge
global filename A I ;
scz=get(0,'ScreenSize');
figure('Position',[round(scz(1,3)/4) round(scz(1,4)/8) 700 500],'MenuBar','None','NumberTitle','off','Name','Pencil sketch Application','Resize','off');
axes('Position',[0 0 .7 1],'xtick',[],'ytick',[]);
Low=uicontrol('Style','slider','Position',[500,280 200 20],'Max',0.99 ,'Min',0,'Value',0.0,'SliderStep',[0.05,0.1],'Callback',@draw);
High=uicontrol('Style','slider','Position',[500,370 200 20],'Max',1,'Min',0.1,'Value',.5,'SliderStep',[0.05,0.1],'Callback',@draw);
uicontrol('Style','pushbutton','String','Done','Position',[500 200 40 20],'Callback',@pushme);
directory=dir('*.jpg');
files={directory.name}';
uicontrol('style','text','Position',[500,310 100 20]','String','Low:');
uicontrol('style','text','Position',[500,395 100 20]','String','High :');
uicontrol('style','text','Position',[500,455 100 20]','String','Filename:');
uicontrol('Style','popupmenu','position',[500 420 160 30],'Value',1,'String',files,'Callback',@displayfile);

    function displayfile(obj,eve)
        ptr=get(obj,'value');
        filename=char(files(ptr));
        A=imread(filename);
        A=imresize(A,0.4);
        subplot('Position',[0.05 0.1 .6 .9]);imshow(A);
    end

    function draw(obj,eve)
        H=get(High,'Value');
        L=get(Low,'Value');
      uicontrol('Style','edit','position',[500 250 50 20],'String',L);
      uicontrol('Style','edit','position',[500 340 50 20],'String',H);
        if(L< span=""><>
            %The intensity values for each R,G,B planes are adjusted.
            I=imadjust(A,[L L L; H H H],[]);
        end
           subplot('Position',[0.05 0.1 .6 .9]);imshow(I);
       
       
       
    end
    function pushme(obj,eve)
        myedges(I);
    end
    function myedges(A)
      
A1=rgb2gray(A);

B=(edge(A(:,:,1))|edge(A(:,:,2))|edge(A(:,:,3)));
Edge detected


SE=strel('disk',3);
C=~(imdilate(B,SE));


target=(ones([size(A1,1) size(A1,2)] ));
[BW,label]=bwlabel(~C,8);

for l=1:max(max(label))
[row, col] = find(BW==l);

if(size(row,1)>30)

for i=1:size(row,1)
    x=row(i,1);
    y=col(i,1);
    target(x,y)=C(x,y);
end
end

end


subplot('Position',[0 0.5 .8 .45]);imshow(A);title('Original Image');
subplot('Position',[0 0   .8 .45]);imshow(target);title('Final Image');


    end
end

Another example:

After Imadjust and edge detection (structuring element:disk Radius=1)

0 comments:

Post a Comment

Recent Comments

Popular Matlab Topics

Share your knowledge - help others

Crazy over Matlab Projects ? - Join Now - Follow Me

Sites U Missed to Visit ?

Related Posts Plugin for WordPress, Blogger...

Latest Articles

Special Search For Matlab Projects

MATLAB PROJECTS

counter

Bharadwaj. Powered by Blogger.