You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
2.1 KiB
Matlab
51 lines
2.1 KiB
Matlab
%clear
|
|
clf
|
|
|
|
%LOAD INPUT IMAGE
|
|
|
|
%I=zeros(31,35); I(16,7:13)=1; I(16,23:29)=1; I(16,15:21)=0.1;
|
|
%I=zeros(35,35); I(16,8:15)=1; I(22,21:28)=1; I(19,18)=1;
|
|
%I=zeros(35,35); I(15,8:15)=1; I(21:28,21)=1; %I(17,19)=1;
|
|
|
|
%I=image_synthetic_simple; %edge and bar
|
|
%I=image_edge_test';I(I<0.6)=0;I=imresize(I,2);%I=I./4;
|
|
%I=image_synthetic_edgewidth;
|
|
%I=image_synthetic_tjunction; I=abs(I-1); %t-junction between bars
|
|
%I(15:25,:)=1;%I(21,21)=0;
|
|
%I(15:40,15:25)=1;I(21,21)=0;
|
|
%I=image_synthetic_cross; %intersection between bars
|
|
%I=image_synthetic_surf_junction;
|
|
%I=image_synthetic_textures; %texture, blocks, and edges
|
|
%I=image_illusory_contour;
|
|
|
|
%I=im2single(rgb2gray(imread('../Data/Images/test.png'))); %parallel and colinear bars
|
|
%I=im2single(rgb2gray(imread('../Data/Images/test_circles.png'))); %co-centric circles
|
|
%I=im2single(rgb2gray(imread('../Data/Images/test_squares.png'))); %co-centric squares
|
|
%I=im2single(imread('../Data/Images/synthetic.pgm')); %texture, blocks, and edges
|
|
|
|
%I=im2single(rgb2gray(imread('../Data/Images/zebra_reduced.png')));
|
|
%I=im2single(rgb2gray(imread('../Data/Images/elephant_reduced.png')));
|
|
%I=im2single(imread('../Data/Images/elephant.png')); %I=I(210:350,240:380);%I=I(238:337,260:359);
|
|
%I=im2single(imread('../Data/Petkov_natural_images_with_edge_ground_truth/goat_3.pgm'));
|
|
%I=im2single(imread('../Data/Petkov_natural_images_with_edge_ground_truth/elephant_2.pgm'));
|
|
I=im2single(imread('../Data/Petkov_natural_images_with_edge_ground_truth/basket.pgm')); I=I(100:460,200:460); %I=I(440:500,400:500); %
|
|
|
|
%I=im2single(imread('../Data/Images/189003.jpg'));
|
|
%I=rgb2gray(imgRead(78004));
|
|
%I=rgb2gray(imgRead(175043));%I=I(101:250,1:200); %snake from Berkeley test set
|
|
%I=image_equal_luminance;
|
|
|
|
%I=imresize(I,0.25);
|
|
I=single(I);
|
|
I=abs(I-1); %make image negative, so that we can invert colormap
|
|
[a,b]=size(I);
|
|
maxsubplot(2,2,3); plot_cropped_image(I,0,[0,1]); title('Input image');
|
|
|
|
%PRE-PROCESS IMAGE TO GENERATE INPUT TO V1 MODEL
|
|
X=preprocess_V1_input(I);
|
|
maxsubplot(2,2,2); plot_cropped_image(X{1}-X{2},0,[-0.8,0.8]); title('Xon-Xoff');
|
|
|
|
%APPLY PC/BC TO THE IMAGE
|
|
[y,s,r]=v1_edge_detection(X);
|
|
%[y,s,r]=v1_edge_detection_multiscalelateral(X);
|