mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.5 KiB
65 lines
1.5 KiB
#! /usr/bin/env octave |
|
addpath("/home/x/opencv2/interfaces/swig/octave"); |
|
source("/home/x/opencv2/interfaces/swig/octave/PKG_ADD_template"); |
|
debug_on_error(true); |
|
debug_on_warning(true); |
|
crash_dumps_octave_core (0) |
|
cv; |
|
highgui; |
|
|
|
laplace = []; |
|
colorlaplace = []; |
|
planes = { [], [], [] }; |
|
capture = []; |
|
|
|
if (size(argv, 2)==0) |
|
capture = cvCreateCameraCapture( -1 ); |
|
elseif (size(argv, 2)==1 && all(isdigit(argv(){1}))) |
|
capture = cvCreateCameraCapture( int32(argv(){1}) ); |
|
elseif (size(argv, 2)==1) |
|
capture = cvCreateFileCapture( argv(){1} ); |
|
endif |
|
|
|
if (!swig_this(capture)) |
|
printf("Could not initialize capturing...\n"); |
|
exit(-1) |
|
endif |
|
|
|
cvNamedWindow( "Laplacian", 1 ); |
|
|
|
while (true), |
|
frame = cvQueryFrame( capture ); |
|
if (!swig_this(frame)) |
|
break |
|
endif |
|
|
|
if (!swig_this(laplace)) |
|
for i=1:size(planes,2), |
|
planes{i} = cvCreateImage( \ |
|
cvSize(frame.width,frame.height), \ |
|
8, 1 ); |
|
endfor |
|
laplace = cvCreateImage( cvSize(frame.width,frame.height), IPL_DEPTH_16S, 1 ); |
|
colorlaplace = cvCreateImage( \ |
|
cvSize(frame.width,frame.height), \ |
|
8, 3 ); |
|
endif |
|
|
|
cvSplit( frame, planes{1}, planes{2}, planes{3}, [] ); |
|
for plane = planes, |
|
plane = plane{1}; |
|
cvLaplace( plane, laplace, 3 ); |
|
cvConvertScaleAbs( laplace, plane, 1, 0 ); |
|
endfor |
|
|
|
cvMerge( planes{1}, planes{2}, planes{3}, [], colorlaplace ); |
|
# colorlaplace.origin = frame.origin; |
|
|
|
cvShowImage("Laplacian", colorlaplace ); |
|
|
|
if (cvWaitKey(10) == 27) |
|
break; |
|
endif |
|
endwhile |
|
|
|
cvDestroyWindow("Laplacian");
|
|
|