"atomic bomb" commit. Reorganized OpenCV directory structure
This commit is contained in:
69
samples/octave/edge.m
Normal file
69
samples/octave/edge.m
Normal file
@@ -0,0 +1,69 @@
|
||||
#! /usr/bin/env octave
|
||||
|
||||
printf("OpenCV Octave version of edge\n");
|
||||
|
||||
global g;
|
||||
|
||||
## import the necessary things for OpenCV
|
||||
cv;
|
||||
highgui;
|
||||
|
||||
## some definitions
|
||||
g.win_name = "Edge";
|
||||
g.trackbar_name = "Threshold";
|
||||
|
||||
## the callback on the trackbar
|
||||
function on_trackbar (position)
|
||||
global g;
|
||||
global cv;
|
||||
global highgui;
|
||||
|
||||
cv.cvSmooth (g.gray, g.edge, cv.CV_BLUR, 3, 3, 0);
|
||||
cv.cvNot (g.gray, g.edge);
|
||||
|
||||
## run the edge dector on gray scale
|
||||
cv.cvCanny (g.gray, g.edge, position, position * 3, 3);
|
||||
|
||||
## reset
|
||||
cv.cvSetZero (g.col_edge);
|
||||
|
||||
## copy edge points
|
||||
cv.cvCopy (g.image, g.col_edge, g.edge);
|
||||
|
||||
## show the image
|
||||
highgui.cvShowImage (g.win_name, g.col_edge);
|
||||
endfunction
|
||||
|
||||
filename = "../c/fruits.jpg";
|
||||
|
||||
if (size(argv, 1)>1)
|
||||
filename = argv(){1};
|
||||
endif
|
||||
|
||||
## load the image gived on the command line
|
||||
g.image = highgui.cvLoadImage (filename);
|
||||
|
||||
if (!swig_this(g.image))
|
||||
printf("Error loading image '%s'",filename);
|
||||
exit(-1);
|
||||
endif
|
||||
|
||||
## create the output image
|
||||
g.col_edge = cv.cvCreateImage (cv.cvSize (g.image.width, g.image.height), 8, 3);
|
||||
|
||||
## convert to grayscale
|
||||
g.gray = cv.cvCreateImage (cv.cvSize (g.image.width, g.image.height), 8, 1);
|
||||
g.edge = cv.cvCreateImage (cv.cvSize (g.image.width, g.image.height), 8, 1);
|
||||
cv.cvCvtColor (g.image, g.gray, cv.CV_BGR2GRAY);
|
||||
|
||||
## create the window
|
||||
highgui.cvNamedWindow (g.win_name, highgui.CV_WINDOW_AUTOSIZE);
|
||||
|
||||
## create the trackbar
|
||||
highgui.cvCreateTrackbar (g.trackbar_name, g.win_name, 1, 100, @on_trackbar);
|
||||
|
||||
## show the image
|
||||
on_trackbar (0);
|
||||
|
||||
## wait a key pressed to end
|
||||
highgui.cvWaitKey (0);
|
||||
Reference in New Issue
Block a user