1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
| package javacv;
import hypermedia.video.OpenCV;
import java.awt.*;
import java.awt.image.MemoryImageSource;
import hypermedia.video.*;
import processing.core.*;
import processing.core.PImage;
import hypermedia.video.*;
import java.awt.Rectangle;
import java.nio.ByteBuffer;
import java.nio.DoubleBuffer;
import java.nio.FloatBuffer;
import java.nio.IntBuffer;
import java.nio.ShortBuffer;
import java.util.Arrays;
import static com.googlecode.javacv.cpp.opencv_core.*;
import static com.googlecode.javacv.cpp.opencv_imgproc.*;
import static com.googlecode.javacv.Parallel.Looper;
import static com.googlecode.javacv.cpp.opencv_core.*;
import static com.googlecode.javacv.cpp.opencv_highgui.*;
import com.googlecode.javacv.cpp.opencv_imgproc.*;
import com.googlecode.javacv.cpp.opencv_core.CvScalar;
import com.googlecode.javacv.cpp.opencv_core.IplImage;
public class javacv {
//color range of red like color:pour le passage en noir et blan
static CvScalar min = cvScalar(0, 0, 130, 0);
static CvScalar max= cvScalar(140, 110, 255, 0);
OpenCV opencv;
/**
* @param args
*/
public static void main(String[] args) {
// must match the name of your class ie "letsp5.Main" = packageName.className
// PApplet.main( new String[]{"letsp5.Main"} );
//------------------------------------------------//
System.out.println( "\n bonjour OpenCV face detection sample\n" );
//new FaceDetection();
//-------------------------------------------------//
//IplImage image = cvLoadImage("test.png", 1);
/********calcul des vecteurs propres*********************/
//------declare les matices------------------------//
ThreadLocal<CvMat>
A3x2=CvMat.createThreadLocal(4, 5),
D2x2=CvMat.createThreadLocal(4, 5),
U3x2=CvMat.createThreadLocal(4, 4),
V2x2=CvMat.createThreadLocal(5, 5);
System.out.println( "\n1");
CvMat A = A3x2.get(), D = D2x2.get(),
U = U3x2.get(), V = V2x2.get();
//-----remplir les matrices----------------------//
A.put(0,0,1);
A.put(0,1,0);
A.put(0,2,0);
A.put(0,3,0);
A.put(0,4,2);
A.put(1,0,0);
A.put(1,1,0);
A.put(1,2,3);
A.put(1,3,0);
A.put(1,4,0);
A.put(2,0,0);
A.put(2,1,0);
A.put(2,2,0);
A.put(2,3,0);
A.put(2,4,0);
A.put(3,0,0);
A.put(3,1,4);
A.put(3,2,0);
A.put(3,3,0);
A.put(0,4,0);
cvSVD(A, D, U, V, CV_SVD_V_T);
System.out.println("\n A:\n"+A);
System.out.println("\nD:\n"+D);
System.out.println("\nU:\n"+U);
System.out.println("\nV:\n"+V);
/***********passage en noir et blan*****************/
//read image
IplImage orgImg = cvLoadImage("lion2.jpg");
System.out.println("\nimage chargée");
//create binary image of original size
IplImage imgThreshold = cvCreateImage(cvGetSize(orgImg), 8, 1);
//apply thresholding
cvInRangeS(orgImg, min, max, imgThreshold);
//smooth filter- median
cvSmooth(imgThreshold, imgThreshold, CV_MEDIAN, 13);
//save
cvSaveImage("lion.jpg", imgThreshold);
}
} |
Partager